drawText使用两个变量和不同的字体

2024-09-28 22:24:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我不知道是否有可能为同一个画家内的每个变量选择不同的文本字体。在

painter.drawText(80, 290, self.text1.text() + self.text2.text())

这是一个例子:for text1想要保留默认值,就像我在painter(boldUnderline)中设置的一样,text2将有(boldUnderline),但是我还想将文本字体改为另一种字体,比如Arial,这一点与{}不同,因为它应该使用不同的语言

以下是完整代码:

^{pr2}$

这样做有什么选择吗? 如果不能这样,还有别的办法吗?在


Tags: 代码text文本self语言for字体例子
1条回答
网友
1楼 · 发布于 2024-09-28 22:24:20

要执行此任务,您可以使用QTextDocument,要设置格式,我们使用QTextCharFormat()来设置字体。在

doc = QTextDocument()
cursor = QTextCursor(doc)

fm = QTextCharFormat()
font = painter.font()
font.setBold(True) 
font.setUnderline(True)
fm.setFont(font) # set QFont

cursor.insertText(text1, fm) # insert text with new format.

# establish new format for example:
# font.setItalic(True) 
# font.setBold(True)

cursor.insertText(text1, fm) 
painter.translate(80, 290)
doc.drawContents(painter)

示例:

^{pr2}$

输出:

enter image description here

您也可以在QTextDocument中使用html:

^{3}$

enter image description here

相关问题 更多 >