QWebEnginePage.print with QPrintPreviewDialog results in empty preview(使用QPrintPreviewDialog的QWebEnginePage.print导致空预览)
问题描述
我有一个程序,过去使用QWebKit在对话框中显示和打印自定义生成的HTML报告,现在,我想将整个内容转换为QWebEngine。到目前为止一切都很好,只有打印效果不好!
到目前为止,我使用QWebView.print()将整个HTML数据交给了QPrintPreviewDialog,这根本不是问题。现在,根据我的理解,我认为我必须使用QWebEngineView.QWebEnginepage.print(printer object, callback)来实现同样的目标。
不幸的是,到目前为止我试过的所有东西都不管用。QPrintPreviewDialog的预览窗格始终为空,打印完成后返回给回调的结果始终为FALSE-尽管打印机对象始终有效,即使在回调中也是如此。
我尝试了不同的方法,不知何故都奏效了,我想,QWebEnginePage.print()函数不知何故有错误,或者PyQt中有错误,但实际上我没有,可能是我做错了什么。
成功的解决方法(我不喜欢;-)):
不要使用
QPrintPreviewDialog,而是通过QWebEngineView.QWebEnginePage.printToPDF(filename):Worked! 生成输出
生成临时
QTextedit对象并通过QPrintPreviewDialog打印:在我的情况下也可以使用,但格式不正确的HTML.
谁能告诉我,如果我在这里假设了什么错误,或者是否有关于如何使用QWebEngineView通过QPrintPreviewDialog打印HTML的下降示例?
推荐答案
QtWebEngine当前不支持打印到打印预览,请参阅QTBUG-57982。不过,可以直接打印到QPrinter。
这篇关于使用QPrintPreviewDialog的QWebEnginePage.print导致空预览的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:使用QPrintPreviewDialog的QWebEnginePage.print导致空预览
基础教程推荐
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
