我使用QWebEnginePage.printToPdf
方法来打印由 Qt 5.7 中的 QWebEnginePage 呈现的网页。但该方法仅呈现网络的一部分。
代码如下:
webEngineView->page()->printToPdf(pdfPath,
QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()));
有什么问题?
我使用QWebEnginePage.printToPdf
方法来打印由 Qt 5.7 中的 QWebEnginePage 呈现的网页。但该方法仅呈现网络的一部分。
代码如下:
webEngineView->page()->printToPdf(pdfPath,
QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF()));
有什么问题?
您应该将 QPageSize 更改为更大的,例如 A3。它在我的应用程序中工作。
我使用 PyQt5.8 和 Qt5.8。
这是我的python代码:
ps = QPageSize(QPageSize.A3)
pl = QPageLayout(ps, QPageLayout.Portrait, QMarginsF())
self.webpage.printToPdf(pdfPath, pageLayout=pl)
确保问题与页面上的 css 无关。如果您已将 html/body 高度设置为 100%,那么实际上可打印区域仅限于可视区域。