我有一个曾经使用过的程序QWebKit
在对话框中显示和打印自定义生成的 HTML 报告,现在,我想将整个内容转换为QWebEngine
。到目前为止一切正常,只有打印不行!
到目前为止我用过QWebView.print()
将整个 HTML 数据交给QPrintPreviewDialog
这根本不是问题。现在,据我了解,我想我必须使用QWebEngineView.QWebEnginepage.print(printer object, callback)
达到同样的目的。
可悲的是,到目前为止我所尝试的一切都没有奏效。 QPrintPreviewDialog 的预览窗格始终保持为空,并且打印完成后返回给回调的结果始终为 False - 尽管打印机对象始终有效,即使在回调中也是如此。
我尝试了不同的方法,这些方法以某种方式起作用,因此我认为 QWebEnginePage.print() 函数在某种程度上有错误,或者 PyQt 中存在错误,但事实上,我没有,也许是我做错了什么。
成功的解决方法(我不喜欢;-)):
不要使用QPrintPreviewDialog
,但通过生成输出QWebEngineView.QWebEnginePage.printToPDF(filename)
: 工作了!
生成一个临时的QTextedit
对象并通过以下方式打印此内容QPrintPreviewDialog
: 也有效,但在我的例子中,HTML 格式错误...
有人可以告诉我,如果我假设这里有问题,或者是否有一个关于如何通过打印 HTML 的下降示例QPrintPreviewDialog
using QWebEngineView
?
QtWebEngine 目前不支持打印到打印预览,请参阅QTBUG-57982。不过,可以直接打印到 QPrinter。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)