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

779次阅读  |  发布于5年以前

本文实例讲述了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程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8