我有三个QPaintDevice
,一个Qlabel
,一个QImage
和一个QPrinter
。当我尝试绘制像矩形这样的非文本元素时,我在所有三个设备上都得到了相同的输出。但是当我尝试通过QPainter.drawText
绘制文本时,QLabel
和QImage
的结果是相同的QPriner
输出是不同的。(QPrinter
输出是一个PDF
文件)。实际上,Qlabel
和QImage
中的文本大小大于输出PDF
文件中的文本大小。瓦特是差异的原因吗?
差异很可能是因为分辨率设置。参见枚举 QPrinter::P rinterMode
此外,QPrint支持类文档指出
注意:在 QPrinter 设备上呈现文本时,请务必 意识到文本的大小(以磅为单位指定时)为 与为设备本身指定的分辨率无关。 因此,在以下情况下以像素为单位指定字体大小可能会很有用 将文本与图形组合以确保其相对大小 您的期望。