肝了一夜,用90行代碼打造最強PDF轉換器,word、PPT、excel、mar...
點上方“菜鳥學Python”,選擇“星標”
第462篇原創(chuàng)干貨,第一時間送達

pdf作為一種便攜式的文檔格式,在日常生活中具有非常廣泛的應用。對于pdf 的應用,無論是文件打印、文檔提交、或者是在線文件的傳遞。都離不開PDF文檔的應用。
office軟件中的word、PPT或者是excel文件等我們日常應用的文件,有時候都會轉換成PDF文檔。
菜鳥哥熬夜給給大家制作一款《最強PDF轉換器》。力圖用最簡單最快捷的程序實現(xiàn)PDF的轉換,一起來看看吧。
01.效果展示
為了方便大家對于程序的應用,小編制作了一個交互界面,利用這個交互界面就可以選擇需要轉換的文件,并轉換成PDF文檔。首先來看一看程序運行的效果吧。02.程序講解
通過上面的視頻,可以看到,程序支持word、PPT等五種文件類型轉換為PDF文檔。接下來我們來展示一下程序是如何實現(xiàn)的吧。
1).word轉成pdf
對于word文檔轉換為pdf文件,程序利用的是docx2pdf庫,首先需要運行pip install docx2pdf 命令來安裝docx2pdf庫。程序如下圖所示:

將word文檔轉換成pdf文件,只需要一行代碼即可完成,需要注意的是,為提升程序運行的魯棒性,可以通過try...except...來捕獲錯誤,防止程序因為異常報錯而崩潰。
2).excel、PPT轉成pdf
對于excel文件和PPT文件轉換成pdf文檔,采用win32com庫進行轉換。程序如下圖所示。

xlApp = client.Dispatch("Excel.Application")創(chuàng)建新的進程,進程中所作用的對象是Excel文件。接下來程序通過打開一個excel文檔,然后通過ExportAsFixedFormat函數(shù)將excel保存為pdf文檔。函數(shù)中第一個參數(shù)“0”表示的是輸出保存為pdf文檔。程序還需要注意的有兩點內容:-根據(jù)不同的操作對象,ExportAsFixedFormat函數(shù)的形參也是不相同的,大家可以參考微軟的官方文檔進行查詢。-在進程對excel或者是PPT文檔的調用過程中,不能夠打開對應的文檔,因為在程序執(zhí)行時,同一個文檔不能夠被兩個進程所占用。
3).markdown文件轉PDF
對于md文件的轉換,需要借助markdown庫和pdfkit庫來進行實現(xiàn)。程序如下圖所示。

4).html轉PDF
對于在線的html文檔轉換成pdf文檔,程序如下圖所示:

上述的程序中,首先通過交互界面獲取到用戶輸入的url鏈接,然后通過pdfkit庫的from_url函數(shù),即可將在線的html文件轉換成pdf文件。
03.交互界面
最后我們通過對于交互界面的展示和程序的講解,來進一步的理解程序的運行過程吧。對于交互界面,程序是利用tkinter庫進行實現(xiàn),如下圖所示:

界面程序非常的簡潔,最為核心的包含了五個按鈕控件,用來控制運行不同的函數(shù),而Entry控件則是用來獲取用戶的輸入。界面的設計如下:

界面中每個按鈕的功能通過它的名字,就能夠進行判別,此外,在Entry控件中,大家只需要輸入需要抓取的url鏈接,然后點擊html2PDF控件,即可完成在線網(wǎng)頁轉換成pdf文檔。
04.如何獲取這個軟件:
以上就是今天小編為大家?guī)淼腜DF轉換器的分享,需要這個程序的可以在公眾號后臺輸入:小助手,找他獲取,備注暗號(pdf)。原創(chuàng)不易,希望大家也能多多支持,目前已經(jīng)原創(chuàng)了461篇文章,記得在留言區(qū)給個三連哦,我們下一篇見!
推薦閱讀:
入門:?最全的零基礎學Python的問題? |?零基礎學了8個月的Python??|?實戰(zhàn)項目?|學Python就是這條捷徑
干貨:爬取豆瓣短評,電影《后來的我們》?|?38年NBA最佳球員分析?|? ?從萬眾期待到口碑撲街!唐探3令人失望? |?笑看新倚天屠龍記?|?燈謎答題王?|用Python做個海量小姐姐素描圖?|
趣味:彈球游戲? |?九宮格? |?漂亮的花?|?兩百行Python《天天酷跑》游戲!
AI:?會做詩的機器人?|?給圖片上色?|?預測收入?|?碟中諜這么火,我用機器學習做個迷你推薦系統(tǒng)電影
年度爆款文案
6).30個Python奇淫技巧集?
點閱讀原文,領廖雪峰大數(shù)據(jù)視頻資料!