2013-05-04 5 views
1

QTextEdit가 포함 된 이미지를 생성하고 싶습니다. 그리고 다음 코드를 작성하여 이미지를 만듭니다.Qt, QTextEdit, QTextEdit의 모든 내용을 이미지로 변환하는 방법.

QSize s = textEdit->frameSize(); 
QPixmap p(s); 
textEdit->render(&p); 
p.save("textContent.png", "PNG"); 

하지만 보이지 않는 내용을 포함 할 수 없습니다. (내용은 QTextEdit에 너무 오래 동안) 내가 방황

을 QTextEidt의 모든 콘텐츠를 포함하는 이미지를 만들 수있는 방법이 있는지. 그리고 어떻게.

감사합니다.

답변

1

나는 당신이 당신은 QTextEdit의 QTextDocument *을받을 수 QTextDocument * QTextEdit::document()을 통해처럼 할 수있는, 생각하고 그것은 화가 페이지와 문서의 내용을 그립니다 void QTextDocument::drawContents (QPainter * p, const QRectF & rect = QRectF())

, 사각형립니다 통해 QImage에 그립니다. rect가 null의 구형 (디폴트)의 경우, 문서는 클립되지 않은 페인트로 페인트됩니다. 여기

체크 남자 - http://harmattan-dev.nokia.com/docs/library/html/qt4/qtextdocument.html#drawContents

또는 - 다른 방법은 - 사용자의 요구에 더 적합 무엇 QPainter를의 방법을 통해 QImage에 QPainter::DrawText()

+0

덕분에 많이 그립니다 - toPlainHtml() or toPlainText()를 통해 텍스트 편집기에서 모든 텍스트를 가지고. 그것은 작동합니다. – dinghim

관련 문제