1

QTextEdit を含む画像を作成したいと考えています。そして、次のコードを書いて画像を作成します。

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

ただし、目に見えないコンテンツを含めることはできません (QTextEdit ではコンテンツが長すぎます)。

QTextEidt のすべてのコンテンツを含む画像を作成する方法があるかどうか、私は迷っています。そしてどうやって。

ありがとう。

4

1 に答える 1

1

QTextDocument * QTextEdit::document ()QTextEditを受け取りQTextDocument *、それを経由してQImageに描画するのと同じようにできると思いますvoid QTextDocument::drawContents ( QPainter * p, const QRectF & rect = QRectF() )

rect にクリッピングされたペインター p を使用して、ドキュメントのコンテンツを描画します。rect が null 四角形 (デフォルト) の場合、ドキュメントはクリップされずに描画されます。

ここで男をチェックしてください - http://harmattan-dev.nokia.com/docs/library/html/qt4/qtextdocument.html#drawContents

または-逆に-TextEditからすべてのテキストを取得しtoPlainHtml() or toPlainText()、ニーズにより適したものを使用して、QPainterのメソッドを介してQImageに描画しますQPainter::DrawText()

于 2013-05-04T10:27:25.747 に答える