我是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字体。
您是否了解我为何会观察此行为?
答案 0 :(得分:0)
尝试一些由它继承的方法,而不仅仅是QWebEngineView。
例如,在我的代码中,我刚刚做了这个:
$timeout(function() {
angular.element("#" + input.property).attr('required', 'required');
});
它在Linux,Windows,OSX甚至Raspberry中运行良好。