基于QTextEdit的编辑器中较大的CSS字体大小

时间:2011-11-10 04:00:18

标签: python css pyqt4 pyside rich-text-editor

我们正在制作一个基于QTextEdit的编辑器。 我们在QtGui.QComboBox中使用QtGui.QTextEdit来选择字体大小。 我们使用的CSS尺寸为:smallnormallargex-largexx-large。 最大的大小约为24点。 有没有办法让它获得48分? (同时保持使用 Ctrl -Mouse wheel进行缩放的能力。)

1 个答案:

答案 0 :(得分:1)

CSS font-size property支持绝对大小(以点或像素指定)或命名相对大小(“小”,“中”,“大”,“x大”或“xx-”大”)。

相对大小是相对于文档字体大小的 - 这意味着在富文本文档的body标记上设置的字体大小。如果未明确设置文档字体大小,则它将从窗口小部件的默认字体(如果有)或应用程序默认字体继承。

因此,如果文档字体已设置为10pt:

font = QFont(self.widget.font())
font.setPointSize(10)
widget.setFont(font)

然后相对字体计算如下:

  • small:0.8 * 10 = 8pt
  • medium:1.0 * 10 = 10pt
  • large:1.2 * 10 = 12pt
  • x-large:1.5 * 10 = 15pt
  • xx-large:2.0 * 10 = 20pt

这意味着让xx-large达到48pt的唯一方法是将文档字体大小设置为24pt(这是非常无用的,但确实如此)。

请注意,缩放的工作原理是更改文档字体大小。因此,在文本块上设置绝对字体大小将阻止它被缩放。