2012-02-10 19 views
5

QPrinterにdrawTextを使用するにはQPainterを使用します。しかし、問題があります。私はカラフルなテキストを描くことができるといいですね。たとえば、 "H"が緑、 "ello"が黄色、 "World"が青である "Hello World"描画。
当面は、drawTextを3回呼び出し、異なるQPenを使用して色を変更します。さらに、私は3倍で描画する位置を計算する必要があります。最後に、完全な文章を描かないので、QRectに文字列を揃えることができませんでした。簡単な方法でそれを解決する方法はありますか?どんなヒントもありがとう!ありがとう!qtカラフルなテキストを描画する

答えて

4

これは、色のCSS仕様を含め、テキスト文字列にhtmlを直接書き込むことで可能です。

Html in widget text

CSS within the htmlこれにアクセスするには、HTML styleタグを使用してください。

編集:これをQPaintDeviceに送信するには、QPainter::drawStaticText()を使用してください。 drawTextのように動作しますが、リッチテキストはデフォルトで読み込まれます。それを使用するには#include <QStaticText>が必要です。

+0

私はpdfファイルを作りたいので、QPrinterに何かを描きます。リッチテキストはQPainterで使用できますか? – Arton

+0

@Anton私の編集を参照してください、これは私自身のコードで動作することを確認しました。 –

+0

正常に動作します。どうもありがとう!! – Arton

関連する問題