我已经使用PyQt5生成了一个PDF,它工作得非常好。我只是希望有一个边界间距,无法做到这一点使用布局。下面是代码
from PyQt5 import QtCore, QtWidgets, QtWebEngineWidgets
def printhtmltopdf(html_in, pdf_filename):
app = QtWidgets.QApplication([])
page = QtWebEngineWidgets.QWebEnginePage()
def handle_pdfPrintingFinished(*args):
print("finished: ", args)
app.quit()
def handle_loadFinished(finished):
page.printToPdf(pdf_filename)
page.pdfPrintingFinished.connect(handle_pdfPrintingFinished)
page.loadFinished.connect(handle_loadFinished)
page.setZoomFactor(1)
page.setHtml(html_in)
app.exec()
printhtmltopdf(
result, # raw html variable
"file.pdf",
)
结果是,
预期结果如下,内容开头和结尾处有空格。基本上我需要有一个填充左,右,顶部和底部
任何建议将不胜感激
1条答案
按热度按时间t2a7ltrp1#
您可以尝试在PyQt中加载自定义CSS样式表,并将此CSS文件应用于HTML内容,从而在元素上产生所需的填充效果。
样式CSS文件
style.css文件与Python脚本位于同一目录中。
也检查this答案。它使用javascript加载css。