2014-03-04 4 views
0

QTextEdit을 사용하여 편집기를 구현하고 있습니다. 내가 가진 요구 사항 중 하나는 고정 된 위치 텍스트를 이미지 위에 추가하는 것입니다.QTextEdit : 이미지 위에 고정 위치 텍스트를 추가하는 방법

: 는 I 차원의 이미지가 : 300x300이있다. 이미지의 위치 (20, 20)에서 시작하는 텍스트를 추가하고 텍스트가 이미지 너비 이상으로 흐르지 않도록해야합니다. 다음과 같은

뭔가 :

Sample output view (pic borrowed from Windows7)

나는 내가 QGraphicView를 추가 할 수 있다면, 나는 적절하게 이미지와 위치에 텍스트를 추가 할 수 있다는 생각입니다. 이것이 가능한가? QTextedit에 그래픽 요소를 도입하는 방법이 있습니까? 그렇지 않다면 올바른 접근 방식은 무엇입니까?

+0

미리 정의 된 rect에서 이미지 위에 텍스트를 그리시겠습니까? 아니면 배경 이미지가있는 편집기가 필요합니까? 또는 다른 것? (미리 정의 된 RECT에서) 이미지를 통해 –

+0

텍스트는 어디 RECT는 이미지 자체 – go4sri

+1

http://qt-project.org/doc/qt-4.8/qpainter.html#drawText-11을의 경계입니까? –

답변

0

QTextEdit에 그래픽 요소를 도입 할 수있는 방법이 있습니까? 그렇지 않다면 올바른 접근 방식은 무엇입니까?

다른 방법으로 살펴보고 QTextEdit를 QGraphicsScene에 추가 할 수 있습니다. 그래픽 장면은 표준 Qt 위젯을 추가하는 QGraphicsProxyWidget을 제공합니다.

따라서, 당신은 QGraphicsScene과를 QGraphicsView를 만들 수 있습니다. 이미지에 대한 QGraphicsPixmapItem을 추가하고 QGraphicsScene :: addWidget에 대한 호출과 함께 QTextEdit 항목을 추가합니다. QGraphicsProxyWidget을 반환하면 위젯의 위치 지정, 크기 조절 및 크기 조정을 할 수 있습니다.

또는 QGraphicsItem으로 시작하여이 인스턴스를 상속 받아 QTextEdit의 이미지 및 프록시 객체를 캡슐화하는 고유 한 객체를 만들 수 있습니다.

도이 문제를 다루는 다른 방법이 있습니다,하지만 난 아마 사용자 정의 QGraphicsItem 가고 싶어. 또한 사양에 따라 다르지만 QTextEdit없이 그래픽 장면에 텍스트 항목을 추가 할 수 있습니다. 필요할 경우 편집 기능을 구현해야 할 수도 있습니다.

관련 문제