Python实现将DOC文档转换为PDF的方法


Posted in Python onJuly 25, 2015

本文实例讲述了Python实现将DOC文档转换为PDF的方法。分享给大家供大家参考。具体实现方法如下:

import sys, os
from win32com.client import Dispatch, constants, gencache
def usage():
  sys.stderr.write ("doc2pdf.py input [output]")
  sys.exit(2)
def doc2pdf(input, output):
 w = Dispatch("Word.Application")
 try:
  doc = w.Documents.Open(input, ReadOnly = 1)
  doc.ExportAsFixedFormat(output, constants.wdExportFormatPDF,
   Item = constants.wdExportDocumentWithMarkup, CreateBookmarks = constants.wdExportCreateHeadingBookmarks)
  return 0
 except:
  return 1
 finally:
  w.Quit(constants.wdDoNotSaveChanges)
# Generate all the support we can.
def GenerateSupport():
 # enable python COM support for Word 2007
 # this is generated by: makepy.py -i "Microsoft Word 12.0 Object Library"
 gencache.EnsureModule('{00020905-0000-0000-C000-000000000046}', 0, 8, 4)
def main():
 if (len(sys.argv) == 2):
  input = sys.argv[1]
  output = os.path.splitext(input)[0]+'.pdf'
 elif (len(sys.argv) == 3):
  input = sys.argv[1]
  output = sys.argv[2]
 else:
  usage()
 if (not os.path.isabs(input)):
  input = os.path.abspath(input)
 if (not os.path.isabs(output)):
  output = os.path.abspath(output)
 try:
  GenerateSupport()
  rc = doc2pdf(input, output)
  return rc
 except:
  return -1
if __name__=='__main__':
  rc = main()
  if rc:
    sys.exit(rc)
  sys.exit(0)

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python将MongoDB里的ObjectId转换为时间戳的方法
Mar 13 Python
python根据出生日期获得年龄的方法
Mar 31 Python
利用Celery实现Django博客PV统计功能详解
May 08 Python
python找出完数的方法
Nov 12 Python
python3.6下Numpy库下载与安装图文教程
Apr 02 Python
python中metaclass原理与用法详解
Jun 25 Python
选择python进行数据分析的理由和优势
Jun 25 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
详解django中Template语言
Feb 22 Python
Python Django form 组件动态从数据库取choices数据实例
May 19 Python
Python文件操作模拟用户登陆代码实例
Jun 09 Python
Python批量解压&压缩文件夹的示例代码
Apr 04 Python
将Django框架和遗留的Web应用集成的方法
Jul 24 #Python
将Python的Django框架与认证系统整合的方法
Jul 24 #Python
Django与遗留的数据库整合的方法指南
Jul 24 #Python
简介Django中内置的一些中间件
Jul 24 #Python
Python字符串转换成浮点数函数分享
Jul 24 #Python
详解Python的Django框架中的中间件
Jul 24 #Python
浅谈Python的Django框架中的缓存控制
Jul 24 #Python
You might like
一个用php3编写的简单计数器
2006/10/09 PHP
ubuntu下编译安装xcache for php5.3 的具体操作步骤
2013/06/18 PHP
php防止伪造的数据从URL提交方法
2014/06/27 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
一个刚完成的layout(拖动流畅,不受iframe影响)
2007/08/17 Javascript
jQuery之浮动窗口实现代码(两种方法)
2010/09/08 Javascript
javascript 闭包
2011/09/15 Javascript
javaScript面向对象继承方法经典实现
2013/08/20 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
jquery动态导航插件dynamicNav用法实例分析
2015/09/06 Javascript
很不错的两款Bootstrap Icon图标选择组件
2016/01/28 Javascript
js实现上一页下一页的效果【附代码】
2016/03/10 Javascript
js实现为a标签添加事件的方法(使用闭包循环)
2016/08/02 Javascript
js html css实现复选框全选与反选
2016/10/09 Javascript
微信小程序富文本渲染引擎的详解
2017/09/30 Javascript
全新打包工具parcel零配置vue开发脚手架
2018/01/11 Javascript
vue绑定的点击事件阻止冒泡的实例
2018/02/08 Javascript
vue  自定义组件实现通讯录功能
2018/09/30 Javascript
JavaScript基于面向对象实现的无缝滚动轮播示例
2020/01/17 Javascript
pandas series序列转化为星期几的实例
2018/04/11 Python
Python基于plotly模块实现的画图操作示例
2019/01/23 Python
基于pandas中expand的作用详解
2019/12/17 Python
通过Python扫描代码关键字并进行预警的实现方法
2020/05/24 Python
Django视图、传参和forms验证操作
2020/07/15 Python
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
Orlebar Brown官网:设计师泳裤和泳装
2020/12/08 全球购物
小摄影师教学反思
2014/04/27 职场文书
法人授权委托书
2014/09/16 职场文书
庆六一开幕词
2015/01/29 职场文书
个性与发展自我评价
2015/03/06 职场文书
党小组鉴定意见
2015/06/02 职场文书
2016中秋节广告语
2016/01/28 职场文书
浅谈如何写好演讲稿?
2019/06/12 职场文书
MYSQL优化之数据表碎片整理详解
2022/04/03 MySQL
解决MySQL报“too many connections“错误
2022/04/19 MySQL
zabbix如何添加监控主机和自定义监控项
2022/08/14 Servers