当前位置: 首页 > article >正文

python实现Word转PDF(comtypes、win32com、docx2pdf)

目录

使用 comtypes 或 win32com

使用docx2pdf


使用 comtypes 或 win32com

支持docx和doc格式的文档转PDF,comtypes与win32com底层调用一样,使用方法也一样。保存文件时相当于调用了office中的另存为。只需要修改SaveAs中的FileFormat参数值即可转为对应格式的文件。

office 2007支持的全部文件格式对应表
wdFormatDocument 0
wdFormatDocument97 0
wdFormatDocumentDefault 16
wdFormatDOSText 4
wdFormatDOSTextLineBreaks 5
wdFormatEncodedText 7
wdFormatFilteredHTML 10
wdFormatFlatXML 19
wdFormatFlatXMLMacroEnabled 20
wdFormatFlatXMLTemplate 21
wdFormatFlatXMLTemplateMacroEnabled 22
wdFormatHTML 8
wdFormatPDF 17
wdFormatRTF 6
wdFormatTemplate 1
wdFormatTemplate97 1
wdFormatText 2
wdFormatTextLineBreaks 3
wdFormatUnicodeText 7
wdFormatWebArchive 9
wdFormatXML 11
wdFormatXMLDocument 12
wdFormatXMLDocumentMacroEnabled 13
wdFormatXMLTemplate 14
wdFormatXMLTemplateMacroEnabled 15
wdFormatXPS 18
# from comtypes import client
from win32com import client


def doc_to_pdf(doc_path, pdf_path):
    # word = client.CreateObject('Word.Application')  # 创建word实例对象
    word = client.Dispatch('Word.Application')
    word.Visible = False  # 不显示Word应用程序窗口
    doc = word.Documents.Open(doc_path)

    doc.SaveAs(pdf_path, FileFormat=17)  # 将文档保存为PDF格式,17代表PDF格式(txt=4, html=10, docx=16, pdf=17)

    # 关闭文档和Word应用程序
    doc.Close()
    word.Quit()

    del doc
    del word

使用docx2pdf

docx2pdf是封装了Windows 系统 win32com 及macos系统处理文件的应用库,只支持docx格式文件转PDF。安装后一行代码即可使用。

安装:pip install docx2pdf

from docx2pdf import convert

def docx_to_pdf(doc_path, pdf_path):
    convert(doc_path, pdf_path)

http://www.kler.cn/a/446321.html

相关文章:

  • SAP RESTful架构和OData协议
  • Pytorch | 从零构建ResNet对CIFAR10进行分类
  • 面试小札:Java后端闪电五连鞭_8
  • netcore 集成Prometheus
  • OpenGL ES 01 渲染一个四边形
  • 【前端】Jquery拍照,通过PHP将base64编码数据转换成PNG格式,并保存图像到本地
  • 如何与AI对话,写好Prompt
  • ffmpeg翻页转场动效的安装及使用
  • xlua中自定义lua文件加载的一种方式
  • 金融信息系统多活技术-应用策略
  • 实现Python将csv数据导入到Neo4j
  • 第2节-Test Case如何调用Object Repository中的请求并关联参数
  • ECharts热力图-笛卡尔坐标系上的热力图,附视频讲解与代码下载
  • pymssql-2.1.4.dev5-cp37-cp37m-win_amd64.whl 安装
  • 12月第十九讲:Redis应用Redis相关解决方案
  • 基于“2+1 链动模式商城小程序”的微商服务营销策略探究
  • Go语言zero框架中配置文件config加载与执行不同环境配置
  • 麒麟操作系统服务架构保姆级教程(二)sersync、lsync备份和NFS持久化存储
  • Java爬虫️ 使用Jsoup库进行API请求有什么优势?
  • 基于单片机的智能婴儿床监护系统多功能婴儿床摇篮系统
  • Android Studio创建新项目并引入第三方so外部aar库驱动NFC读写器读写IC卡
  • CentOS 7 上自动安装 Python 3.9 脚本
  • java全栈day20--Web后端实战(Mybatis基础2)
  • 汽车气候控制传感器
  • CMake的INSTALL FILES和INSTALL DIRECTORY有什么区别
  • Glide 自定义圆角、铺满FitXY