玩蛇网提供最新Python编程技术信息以及Python资源下载!
您现在的位置: 玩蛇网首页 > Python源码实例 > 正文内容

Python将DOC文档转换为PDF的方法源码详解

分享一个用python代码写的将doc转换成pdf文件的代码, Python将DOC文档转换为PDF的方法,这样可以解决用命令来转换的麻烦操作。Python sysPython os模块方法是代码中需要导入使用的。其它没有什么特别的要求。

代码中的注释为英文的,可以自行网上翻译一下。

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.
#www.iplaypy.com

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)

站长推荐阅读相关内容:
linux基础入门教程

玩蛇网文章,转载请注明出处和文章网址:http://www.iplaypy.com/code/c2657.html [复制]


微信扫描下图可直接关注Python公众号

玩蛇网Python QQ群,欢迎加入: ① 279974227 玩蛇网Python新手群
修订日期:2015年12月23日 - 21时36分29秒 发布自玩蛇网

我要分享到:
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules