最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實(shí)現(xiàn)word 2007文檔轉(zhuǎn)換為pdf文件

 更新時(shí)間:2018年03月15日 09:04:19   作者:網(wǎng)海水手  
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)word 2007文檔轉(zhuǎn)換為pdf文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

在開(kāi)發(fā)過(guò)程中,會(huì)遇到在命令行下將DOC文檔(或者是其他Office文檔)轉(zhuǎn)換為PDF的要求。比如在項(xiàng)目中如果手冊(cè)是DOC格式的,在項(xiàng)目發(fā)布時(shí)希望將其轉(zhuǎn)換為PDF格式,并且保留DOC中的書(shū)簽,鏈接等。將該過(guò)程整合到構(gòu)建過(guò)程中就要求命令行下進(jìn)行轉(zhuǎn)換。

Michael Suodenjoki展示了使用Office的COM接口進(jìn)行命令行下的轉(zhuǎn)換。但其導(dǎo)出的PDF文檔沒(méi)有書(shū)簽。在Office 2007 SP2中,微軟加入了該功能,對(duì)應(yīng)的接口是ExportAsFixedFormat。該方法不僅適用于Word,而且也適用于Excel。

一個(gè)簡(jiǎn)單的Python腳本來(lái)展示如何轉(zhuǎn)換DOC為PDF。該腳本需要Office 2007 SP2, Python 2.6與Python for win32(使Python能調(diào)用COM)。這里也可以使用其他支持COM的語(yǔ)言。ExportAsFixedFormat還有其他一些參數(shù),具體參見(jiàn)MSDN相關(guān)文檔。需要注意的是文檔路徑需要為絕對(duì)路徑,因?yàn)閃ord啟動(dòng)后當(dāng)前路徑不是調(diào)用腳本時(shí)的當(dāng)前路徑。

#-*- coding:utf-8 -*- 
 
# doc2pdf.py: python script to convert doc to pdf with bookmarks! 
# Requires Office 2007 SP2 
# Requires python for win32 extension 
 
 
import sys, os 
from win32com.client import Dispatch, constants, gencache 
 
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: 
  input = u'BA06007013.docx'#word文檔的名稱 
  output = u'BA06007013.pdf'#pdf文檔的名稱 
 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) 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談python中scipy.misc.logsumexp函數(shù)的運(yùn)用場(chǎng)景

    淺談python中scipy.misc.logsumexp函數(shù)的運(yùn)用場(chǎng)景

    下面小編就為大家?guī)?lái)一篇淺談python中scipy.misc.logsumexp函數(shù)的運(yùn)用場(chǎng)景。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • Python網(wǎng)絡(luò)爬蟲(chóng)之獲取網(wǎng)絡(luò)數(shù)據(jù)

    Python網(wǎng)絡(luò)爬蟲(chóng)之獲取網(wǎng)絡(luò)數(shù)據(jù)

    本文介紹了Python中用于獲取網(wǎng)絡(luò)數(shù)據(jù)的重要工具之一——Requests庫(kù),詳細(xì)講解了Requests庫(kù)的基本使用方法、請(qǐng)求方法、請(qǐng)求頭、請(qǐng)求參數(shù)、Cookies、Session等內(nèi)容,并結(jié)合實(shí)例代碼展示了Requests庫(kù)的應(yīng)用場(chǎng)景
    2023-04-04
  • pytorch中如何設(shè)置隨機(jī)種子

    pytorch中如何設(shè)置隨機(jī)種子

    這篇文章主要介紹了pytorch中如何設(shè)置隨機(jī)種子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Python??Flask框架操作數(shù)據(jù)庫(kù)的方法

    Python??Flask框架操作數(shù)據(jù)庫(kù)的方法

    Flask中最方便用的數(shù)據(jù)庫(kù)框架是flask_sqlalchamy,是對(duì)?SQLAlchamy?在?Flask?中的擴(kuò)展,它主要在于簡(jiǎn)化Flask?中?sqlalchamy的使用,本篇文章給大家介紹Python??Flask的數(shù)據(jù)庫(kù)操作使用方法,感興趣的朋友一起看看吧
    2024-02-02
  • pandas中Series和DataFrame的rank方法解析

    pandas中Series和DataFrame的rank方法解析

    pandas中的rank方法是用于數(shù)據(jù)排名的重要工具,它不返回排序后的數(shù)據(jù),而是數(shù)據(jù)的排名。rank方法可以處理相同數(shù)據(jù)的排名,通過(guò)平均排名方式解決排名沖突,并支持自定義排序規(guī)則及逆序排名。此外,DataFrame的rank方法允許在行或列上計(jì)算排名
    2024-09-09
  • python入門之基礎(chǔ)語(yǔ)法學(xué)習(xí)筆記

    python入門之基礎(chǔ)語(yǔ)法學(xué)習(xí)筆記

    學(xué)習(xí)python過(guò)程中需要了解的一些基礎(chǔ)語(yǔ)法特整理一下方便更開(kāi)始接觸python的朋友
    2020-02-02
  • Github?Copilot結(jié)合python的使用方法詳解

    Github?Copilot結(jié)合python的使用方法詳解

    最近也是聽(tīng)說(shuō)github出了一種最新的插件叫做copilot,于是申請(qǐng)了,下面這篇文章主要給大家介紹了關(guān)于Github?Copilot結(jié)合python使用的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • python文件讀取read及readlines兩種方法使用詳解

    python文件讀取read及readlines兩種方法使用詳解

    這篇文章主要為大家介紹了python文件讀取read及readlines兩種方法的使用示例及區(qū)別詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Pytest如何使用skip跳過(guò)執(zhí)行測(cè)試

    Pytest如何使用skip跳過(guò)執(zhí)行測(cè)試

    這篇文章主要介紹了Pytest如何使用skip跳過(guò)執(zhí)行測(cè)試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • python多線程高級(jí)鎖condition簡(jiǎn)單用法示例

    python多線程高級(jí)鎖condition簡(jiǎn)單用法示例

    這篇文章主要介紹了python多線程高級(jí)鎖condition簡(jiǎn)單用法,結(jié)合實(shí)例形式分析了condition對(duì)象常用方法及相關(guān)使用技巧,需要的朋友可以參考下
    2019-11-11

最新評(píng)論

鄂州市| 东方市| 延安市| 永福县| 沽源县| 石城县| 吉首市| 阳朔县| 通江县| 秦安县| 哈尔滨市| 昭苏县| 呼和浩特市| 疏附县| 铜川市| 平陆县| 县级市| 大同县| 丰台区| 大渡口区| 宽城| 新晃| 安仁县| 竹溪县| 武穴市| 佛冈县| 铜山县| 潼南县| 绥滨县| 习水县| 乐平市| 遂溪县| 天长市| 邓州市| 平山县| 会昌县| 仁怀市| 共和县| 龙泉市| 西华县| 雷州市|