我有一个用于QWebKit
在对话框中显示和打印自定义生成的 HTML 报告的程序,现在,我想将整个内容转换为QWebEngine
. 到目前为止一切正常,只有打印不行!
到目前为止,我曾经QWebView.print()
将整个 HTML 数据交给一个QPrintPreviewDialog
根本不是问题的。现在,据我了解,我认为我必须使用QWebEngineView.QWebEnginepage.print(printer object, callback)
来实现相同的目标。
可悲的是,到目前为止我尝试的一切都没有奏效。QPrintPreviewDialog 的预览窗格始终保持空白,打印完成后返回给回调的结果始终为 False - 尽管打印机对象始终有效,即使在回调中也是如此。
我尝试了不同的东西,它们以某种方式起作用,因此我认为 QWebEnginePage.print() 函数在某种程度上存在错误,或者 PyQt 中存在错误,但事实上,我没有,也许是我做错了什么。
成功的解决方法(我不喜欢;-)):
不要使用
QPrintPreviewDialog
,而是通过QWebEngineView.QWebEnginePage.printToPDF(filename)
:working 生成输出!生成一个临时
QTextedit
对象并通过以下方式打印它QPrintPreviewDialog
:也可以工作,但在我的情况下HTML格式错误......
有人可以告诉我,如果我在这里假设有问题,或者是否有关于如何通过QPrintPreviewDialog
using打印 HTML 的下降示例QWebEngineView
?