次のコードを使用して、QTextEdit のコンテンツを QPixmap にレンダリングすることに成功しました。しかし、これは QPlainTextEdit では失敗します。QTextEdit の代わりに QPlainTextEdit を使用すると、コンテンツが色なしでレンダリングされます (すべて黒/白)。
QPixmap* pixmap = new QPixmap(width, height);
QPainter* painter = new QPainter(pixmap);
painter->fillRect( 0, 0, width, height, QColor(247, 247, 247) );
painter->setRenderHints(QPainter::SmoothPixmapTransform |
QPainter::HighQualityAntialiasing |
QPainter::TextAntialiasing);
m_pTextEdit->document()->drawContents(painter);
QPlainTextEdit のコンテンツを色でレンダリングするにはどうすればよいですか? ご注意ください、
- QPlainTextEdit でテキストを html として設定すると、色付きの出力が生成されます。
- 関数を使用し
QSyntaxHighlighter::setFormat
てテキストの色を設定しています。
Qt4.8.5、VS2008、Windows7を使用しています