通过Python调用Print to PDF 除了使用reportlab库生成PDF文件外,我们还可以通过Python调用操作系统的打印功能,将文档打印为PDF文件。下面是一个使用subprocess库调用操作系统打印功能将文本内容输出为PDF文件的示例代码: importsubprocess# 将文本内容写入文件withopen("example.txt","w")asfile:file.write("Hello, World!
步骤2:保存为PDF 我们可以使用win32api和win32print库来实现将打印文件保存为PDF格式。下面是保存为PDF的代码示例: importwin32apiimportwin32print printer_name=win32print.GetDefaultPrinter()filename="C:\\path\\to\\printfile.pdf"win32api.ShellExecute(0,"printto",filename,printer_name,".",0) 1. 2...
import win32print import win32api 获取默认打印机 printer_name = win32print.GetDefaultPrinter() 发送PDF打印任务 接下来,可以设置打印任务的参数,并发送要打印的PDF文件到打印队列。 filename = "C:\\path\\to\\your\\file.pdf" win32api.ShellExecute(0, "print", filename, '/d:"%s"' % printer_...
在Windows上,你可以通过调用win32api.ShellExecute函数来使用虚拟打印机。在这个例子中,我们将使用“Microsoft Print to PDF”作为虚拟打印机。 python import win32api def convert_xps_to_pdf(xps_path, pdf_path): # 调用虚拟打印机将xps文件转换为pdf文件 win32api.ShellExecute( 0, "print", xps_path, f...
currentPrinter=win32print.GetDefaultPrinterW() 借助这两个api,我们就可以后台悄无声息地更改默认打印机为Microsoft Print To PDF来打印网页为pdf,用完后再悄悄还原默认打印机为用户一开始设定的常用打印机。 之后就是在网页加载好之后,调用系统的打印界面,即Ctrl+Shift+P。我们需要借助win32api.keybd_event(vk_code...
没有它做不到的事情。在编写程序之前,你最好准备一个带有表格的PDF文件。用来测试我们编写好的程序。
假如您刚好只想打印页面的某几页为PDF文件,那么这就成了一个不大不小的问题。通过翻阅很多资料,我发现chrome浏览器的实验性方法Page.printToPDF 可以有效解决这个问题,它有如下参数可以设置: 可以看到,这里面几乎有我们想要传递的所有参数,包括页码(pageRanges:Paper ranges to print, e.g., '1-5, 8, 11-13...
写一个split也是很容易的,每个page都构造一个全新的PdfWriter,addpage后写出即可。 只用这几句,就可以干不少事情了。例如,提取一个PDF文件的某几页,只需要在writer上对想要输出的page调用addpage即可。 其实不写脚本页可以,就是直接打印,打印机里应该至少有个“Microsoft Print to PDF”,填进去想打印的页号即可...
其中QtWebEngineWidgets子模块中的QWebEngineView()类提供了printToPdf方法供我们将网页打印为 PDF 文档,所以基于此,我们也可以使用 PyQt5 或 PySide2 进行 HTML 转换 PDF,示例如下所示: 最后 在上面,州的先生介绍了 3 种在 Python 中转换 HTML 文档为 PDF 文档的方案,每种方案都有各自的优势和不足,正确地...
0,# "print",# pdf,# '/d:"%s"' % cprinter,# ".",# 0# )# 第三种方法,没搞成功,程序也无法自动关闭---# if sys.platform == 'win32':# args = [f"{os.path.dirname(__file__)}\plug\SumatraPDF-3.3.3-64.exe",# '-silent',# '-print-to',# f'{cprinter}',# '-print-se ...