我尝试了接受的答案,但对Word产生的过大的PDF并不特别感兴趣,它通常比预期的大一个数量级。在查看了如何在使用虚拟PDF打印机时禁用对话框之后,我遇到了Bullzip PDF Printer,并且其功能给我留下了深刻的印象。现在,它取代了我以前使用的其他虚拟打印机。您可以在他们的下载页面上找到“免费社区版”。

该COM API,可以发现在这里,可以找到的可用设置列表在这里。设置被写入一个“ runonce”文件,该文件仅用于一个打印作业,然后自动删除。当打印多个PDF时,我们需要确保在开始另一个打印作业之前完成一个打印作业,以确保正确地使用每个文件的设置。

import os, re, time, datetime, win32com.client

def print_to_Bullzip(file):

util = win32com.client.Dispatch("Bullzip.PDFUtil")

settings = win32com.client.Dispatch("Bullzip.PDFSettings")

settings.PrinterName = util.DefaultPrinterName      # make sure we're controlling the right PDF printer

outputFile = re.sub("\.[^.]+$", ".pdf", file)

statusFile = re.sub("\.[^.]+$", ".status", file)

settings.SetValue("Output", outputFile)

settings.SetValue("ConfirmOverwrite", "no")

settings.SetValue("ShowSaveAS", "never")

settings.SetValue("ShowSettings", "never")

settings.SetValue("ShowPDF", "no")

settings.SetValue("ShowProgress", "no")

settings.SetValue("ShowProgressFinished", "no")     # disable balloon tip

settings.SetValue("StatusFile", statusFile)         # created after print job

settings.WriteSettings(True)                        # write settings to the runonce.ini

util.PrintFile(file, util.DefaultPrinterName)       # send to Bullzip virtual printer

# wait until print job completes before continuing

# otherwise settings for the next job may not be used

timestamp = datetime.datetime.now()

while( (datetime.datetime.now() - timestamp).seconds < 10):

if os.path.exists(statusFile) and os.path.isfile(statusFile):

error = util.ReadIniString(statusFile, "Status", "Errors", '')

if error != "0":

raise IOError("PDF was created with errors")

os.remove(statusFile)

return

time.sleep(0.1)

raise IOError("PDF creation timed out")

python win32转pdf 横版_.doc使用python转换为pdf相关推荐

  1. python win32转pdf 横版_使用Python3将word文档和pdf电子书进行格式互转(兼容Windows/Linux)...

    一些重要文档格式之间的互转在目前显得尤为重要,pdf作为通用格式在现在各个平台上兼容性是最好的,所以写python脚本将这些word文档批量转换pdf是最好的解决方案. 由于windows系统对于wo ...

  2. python win32转pdf 横版_使用python脚本完成word转pdf(兼容linux)

    参考:https://v3u.cn/a_id_96 起因:看到一个需求是用java把word转成pdf,在windows上使用Jacob可以实现,但linux上比较麻烦,  性能等综合考虑使用Open ...

  3. python win32转pdf 横版_讲真,别再用win32com包来实现Word文档转PDF了

    这几天有件大爽事. 之前一直放在Django原生的服务器的网站,终于放到Apache上了.并不是配置多难,也不是我懒,问题出在了用win32com实现word转pdf,我不能使用这个插件读取word, ...

  4. python win32转pdf 横版_用Python将PPT转换PDF

    # 1). 导入需要的模块(打开应用程序的模块) import win32com.client import os def ppt2pdf(filename, output_filename): &q ...

  5. python ppt转pdf 苹果系统_批量将ppt转换为pdf的Python代码 只要27行!

    这是一个Python脚本,能够批量地将微软Powerpoint文件(.ppt或者.pptx)转换为pdf格式. 使用说明 1.将这个脚本跟PPT文件放置在同一个文件夹下. 2.运行这个脚本. 全部代码 ...

  6. python win32转pdf 横版_解决pythoncom和win32com下docx文件转化为pdf文件过程中Word后台进程无法关闭的问题...

    1 目的 笔者在python3.6环境下,想把一个word文档转化为pdf文件.使用了以下的方式 from win32com import client import pythoncom doc2pd ...

  7. aspose转pdf横版_Aspose系列实现docx转PDF,PPT转PDF,EXCEL转PDF

    没有什么营养,就是调用一下这个组件.其实一开始用的是Microsoft.Office.Interop.Excel;Microsoft.Office.Interop.Word 但是在服务器要注意,服务器 ...

  8. python写文字冒险游戏手机版_将用户输入转换为小写文字冒险游戏python3

    我为另一个简单的问题道歉,但我真的被卡住了-我正在尝试添加一个.lower()方法来将任何用户输入(无论是大写.小写还是组合)转换为小写.在 我只是不知道在哪里添加.lower()?在 这是游戏的主要 ...

  9. python将文档转换成pdf_Python实现将DOC文档转换为PDF的方法

    本文实例讲述了Python实现将DOC文档转换为PDF的方法.分享给大家供大家参考.具体实现方法如下: import sys, os from win32com.client import Dispa ...

  10. 实现DOC、DOCX转换为PDF 再将PDF转换为图片

    实现DOC.DOCX转换为PDF 再将PDF转换为图片 首先导入需要的依赖 <dependency><groupId>cn.hutool</groupId>< ...

最新文章

  1. Objective-C:保留计数器思想的详解(对象的保留和所有权的释放)
  2. 华北科技学院计算机期末考试,华北科技学院 专业计算机 考试专用
  3. 写速度提升20%,Elasticsearch 创始人给腾讯云发来感谢信
  4. 【linux 001】【利用staging Driver】【001】wifi AR6000 驱动移植引发的 staging 的问题
  5. 3.8 Spark 用户日志分析
  6. CLR寄宿(上) MSCOREE.DLL
  7. 零基础学启发式算法(4)-模拟退火 (Simulated Annealing)
  8. jar 添加环境变量
  9. 【2022 李宏毅】机器学习导论
  10. “5杯水,怎么分给6个领导?” 答案暴露认知层次...
  11. php cunstruct,南开大学海外大学生物学类教授一览
  12. 发一个笔筒式的摄像头驱动(台湾原相科技)
  13. 制作 .Img 镜像文件
  14. pycharm中出现这个文件图标左上角出现这个问号怎么解决
  15. 微信小程序之小程序审核
  16. 手把手教你提升抖音直播间人气、流量的6个技巧
  17. 【软件质量】软件复杂性
  18. python输出水仙花数_python打印水仙花数(基础版)
  19. 【科学常识】之《木桶效应》
  20. 计算机考试试题玫瑰,阿纳托尔·法朗士《你一朵玫瑰花》阅读练习及答案(2019年浙江省湖州市中考题)...

热门文章

  1. 【CSS】纯CSS实现三级导航(模板)
  2. 【20保研】2019年中科院沈阳计算所大学生暑期夏令营通知
  3. VScode代码美化工具Beautify
  4. kvm的乾坤大挪移-虚拟机迁移
  5. 计算机硕士工资一览表 08年最新各大IT公司薪水行
  6. 【智慧城市】智能照明系统解决方案
  7. KCF跟踪算法/目标跟踪算法KCF案例程序源码
  8. 倍福TwinCAT 3 气缸动作程序编写
  9. tcflush()用法 以及 Termios 介绍
  10. 饿百零售开放平台,测试账号饿了么显示该商家还没有上传商品