我用html代码为我的程序生成了一个报告,但它没有在Qprinter中显示图像。在
def run(self):
view = QtWebEngineWidgets.QWebEngineView()
view.setHtml("""<img src="header.jpeg" alt="logo" width="280" height="100">""")
printer = QPrinter()
printer.setPaperSize(QtCore.QSizeF(80 ,297), QPrinter.Millimeter)
try :
r = QPrintDialog(printer)
if r.exec_() == QPrintDialog.Accepted:
view.page().print(printer, self.print_completed)
except Exception as e :
print(e)
我要打印的html代码。 这个页眉.jpeg在同一目录中。在
qtwebengine在打印时异步执行任务,由于view和printer是本地变量,当同步功能完成时,它们将被消除。解决方案是即使在运行结束时也保留这些对象。在
不必使用QWebEngineView,因为您不会显示任何内容,只显示QWebEnginePage。在
另一方面,文档声明外部资源(如图像)是基于传递给第二个参数的URL加载的。所以解决方案是以当前目录为基础传递一个url。在
相关问题
PyPI热门下载资源包