我使用 QPainter 在 QPrinter 上绘制文本;但是,有一个问题。我希望我能画出五颜六色的文字。例如,绘制“Hello World”,其中“H”为绿色,“ello”为黄色,“World”为蓝色。
目前,我调用 drawText 3 次并使用不同的 QPen 更改颜色。此外,我必须计算 3 次绘制的位置。最后,我无法对齐 QRect 中的字符串,因为我没有画出完整的句子。有没有办法用简单的方法解决它?任何提示表示赞赏!谢谢!
问问题
2760 次
1 回答
4
您可以通过将 html 直接写入文本字符串来完成此操作,包括颜色的 CSS 规范。
html 中的CSS使用 htmlstyle
标签来访问它。
编辑:要在 a 上得到这个QPaintDevice
,使用QPainter::drawStaticText()
. 它的工作方式与drawText
默认情况下相同,但会读取富文本。你需要#include <QStaticText>
使用它。
于 2012-02-10T17:07:48.767 回答