【发布时间】:2016-11-23 13:27:56
【问题描述】:
我正在继承 QWebEngineView 类:
class WebViewPerso(QtWebEngineWidgets.QWebEngineView):
def __init__(self, parent=None):
super(WebViewPerso, self).__init__(parent)
print(self.settings().fontFamily(QtWebEngineWidgets.QWebEngineSettings.StandardFont))
# Get the default font and use it in the view
self.settings().setFontFamily(
QtWebEngineWidgets.QWebEngineSettings.StandardFont,
self.font().family())
print(self.settings().fontFamily(QtWebEngineWidgets.QWebEngineSettings.StandardFont))
在 linux 上,两个 print 语句返回:
DejaVu Serif
Sans Serif
它清楚地表明我更改了视图的字体,并且视图现在使用了正确的字体。
在 OSX 上使用完全相同的行,我得到:
Times
.SF NS Text
这也表明字体已更改。但是,视图仍然使用 Times 字体。
我也试过设置线:
FixedFont
SerifFont
SansSerifFont
CursiveFont
FantasyFont
PictographFont
但我的 WebEngineView 仍然使用 Times 字体。
你知道我为什么会观察到这种行为吗?
【问题讨论】:
标签: macos python-3.x fonts pyqt pyqt5