Как я могу сделать QWebView / QWebPage по умолчанию для шрифта с засечками? - PullRequest
3 голосов
/ 27 января 2012

Используя PyQt4, я создаю QWebView, а затем загружаю его методом setHtml ().HTML отображается правильно во многих отношениях, но всегда с использованием шрифта sans-serif по умолчанию.

Когда идентичный простой текст HTML загружается внешним браузером, например Firefox, он отображается шрифтом с засечками по умолчанию.Мне бы хотелось, чтобы веб-просмотр делал то же самое.

Я прочитал документацию для QWebView, QWebPage и QWebSettings и не вижу способа установить стандартный или стандартный пропорциональный шрифтсравнимо с настройками браузера.Я посмотрел на QStyleSheets, но, похоже, они не относятся к QWebView / WebPage.

Ответы [ 2 ]

5 голосов
/ 28 января 2012

Чтобы установить шрифт по умолчанию для всех веб-страниц, используйте QWebSettings , чтобы изменить семейство шрифтов для StandardFont и изменить размер шрифта для DefaultFontSize :

settings = QtWebKit.QWebSettings.globalSettings()
settings.setFontFamily(QtWebKit.QWebSettings.StandardFont, 'Times New Roman')
settings.setFontSize(QtWebKit.QWebSettings.DefaultFontSize, 12)
0 голосов
/ 27 января 2012

В QWebSettings есть все, что вам нужно:

enum FontFamily { StandardFont, FixedFont, SerifFont, SansSerifFont, CursiveFont, FantasyFont }
void setFontFamily ( FontFamily which, const QString & family )

Я не проверял, но чего тебе не хватает? Возможно, вы захотите взглянуть на веб-браузер Arora на основе Qt Webkit.

...