the*_*232 4 python reportlab pyqt qtextedit python-2.7
我试图将文本编辑器的内容保存为pdf文件.文本编辑器是使用PyQt制作的(我没有制作文本编辑器),我从这里获得了文本编辑器的代码.我对编辑器做了一些更改,但这不会成为问题.
经过一些初步的研究后,我发现我需要使用ReportLab来发布一个pdf文件.但我找不到办法做到这一点.
有谁知道如何实现这一目标?
文本编辑器的源代码已经有一个PDF方法,但它没有使用,并且可能无法正常工作.
应该在所有平台上运行的方法的基本重写如下所示:
def SavetoPDF(self):
filename = QtGui.QFileDialog.getSaveFileName(self, 'Save to PDF')
if filename:
printer = QtGui.QPrinter(QtGui.QPrinter.HighResolution)
printer.setPageSize(QtGui.QPrinter.A4)
printer.setColorMode(QtGui.QPrinter.Color)
printer.setOutputFormat(QtGui.QPrinter.PdfFormat)
printer.setOutputFileName(filename)
self.text.document().print_(printer)
Run Code Online (Sandbox Code Playgroud)
你唯一需要的是一个菜单项来运行它,所以Main.initUI只需添加:
pdfAction = QtGui.QAction("Save to PDF", self)
pdfAction.setStatusTip("Save to PDF")
pdfAction.triggered.connect(self.SavetoPDF)
...
file.addAction(pdfAction)
Run Code Online (Sandbox Code Playgroud)