ОК, я наконец понял это. Похоже, что только библиотека Webkit2 достаточно современна, чтобы справиться с печатью из Webview. Я использовал WebKit1, и по этой причине он не работал. Поэтому мне пришлось изменить свои зависимости, и после этого это было на самом деле довольно просто ...
Допустим, у вас есть веб-представление с именем myWebView
, тогда ваша функция для печати его содержимого будет выглядеть так:
def onPrintButtonClicked( self, widget ):
#Set the operation up
printOperation = WebKit2.PrintOperation.new( self.myWebView )
#Run the dialog
printOperation.run_dialog()
После диалогового окна вы можете на самом деле проверить, выбрал ли пользователь печать или отменить, проверив WebKit2.PrintOperationResponse.CANCEL
или WebKit2.PrintOperationResponse.PRINT
возвращаемые значения.
Reagards