首页 文章详情

肝了一夜,用90行代码打造最强PDF转换器,word、PPT、excel、mar...

菜鸟学Python | 318 2021-04-07 10:35 0 0 0
UniSMS (合一短信)


点上方“菜鸟学Python”,选择“星标

第462篇原创干货,第一时间送达


5055a48fbc130e810b743903dfa32167.webp

pdf作为一种便携式的文档格式,在日常生活中具有非常广泛的应用。对于pdf 的应用,无论是文件打印、文档提交、或者是在线文件的传递。都离不开PDF文档的应用。


office软件中的word、PPT或者是excel文件等我们日常应用的文件,有时候都会转换成PDF文档。


菜鸟哥熬夜给给大家制作一款《最强PDF转换器》。力图用最简单最快捷的程序实现PDF的转换,一起来看看吧。


01.效果展示
为了方便大家对于程序的应用,小编制作了一个交互界面,利用这个交互界面就可以选择需要转换的文件,并转换成PDF文档。首先来看一看程序运行的效果吧。


02.程序讲解

通过上面的视频,可以看到,程序支持word、PPT等五种文件类型转换为PDF文档。接下来我们来展示一下程序是如何实现的吧。

1).word转成pdf

对于word文档转换为pdf文件,程序利用的是docx2pdf库,首先需要运行pip install docx2pdf 命令来安装docx2pdf库。程序如下图所示:

f8b8538874b6c0a981a0a258dba30ffe.webp

将word文档转换成pdf文件,只需要一行代码即可完成,需要注意的是,为提升程序运行的鲁棒性,可以通过try...except...来捕获错误,防止程序因为异常报错而崩溃。


2).excel、PPT转成pdf

对于excel文件和PPT文件转换成pdf文档,采用win32com库进行转换。程序如下图所示。

8e71736ab479cd5c5418524fa45916e2.webp

程序中对于excel文档和PPT文档的操作非常的类似,因此这里我们已excel文档的操作为例,来进行程序的阐述,首先通过程序xlApp = client.Dispatch("Excel.Application")创建新的进程,进程中所作用的对象是Excel文件。
接下来程序通过打开一个excel文档,然后通过ExportAsFixedFormat函数将excel保存为pdf文档。函数中第一个参数“0”表示的是输出保存为pdf文档。程序还需要注意的有两点内容:-根据不同的操作对象,ExportAsFixedFormat函数的形参也是不相同的,大家可以参考微软的官方文档进行查询。-在进程对excel或者是PPT文档的调用过程中,不能够打开对应的文档,因为在程序执行时,同一个文档不能够被两个进程所占用。


3).markdown文件转PDF

对于md文件的转换,需要借助markdown库和pdfkit库来进行实现。程序如下图所示。

2e605090462a0e5414a04d0e5f1f01a1.webp

程序将md文件转换成pdf文件需要分为两步来实现,第一步,将md文件转换成html格式的文件,然后利用pdfkit库将html文件转换成pdf文件即可。


4).html转PDF

对于在线的html文档转换成pdf文档,程序如下图所示:

dbf46f24999cce461e98246d94cf3a55.webp

上述的程序中,首先通过交互界面获取到用户输入的url链接,然后通过pdfkit库的from_url函数,即可将在线的html文件转换成pdf文件。


03.交互界面

最后我们通过对于交互界面的展示和程序的讲解,来进一步的理解程序的运行过程吧。对于交互界面,程序是利用tkinter库进行实现,如下图所示:

6007ca543fce92a17c151bd064aa9c23.webp

界面程序非常的简洁,最为核心的包含了五个按钮控件,用来控制运行不同的函数,而Entry控件则是用来获取用户的输入。界面的设计如下:

778c156c22a71bc6bb0d8f7cc377005e.webp

界面中每个按钮的功能通过它的名字,就能够进行判别,此外,在Entry控件中,大家只需要输入需要抓取的url链接,然后点击html2PDF控件,即可完成在线网页转换成pdf文档。


04.如何获取这个软件:

以上就是今天小编为大家带来的PDF转换器的分享,需要这个程序的可以在公众号后台输入:小助手,找他获取,备注暗号(pdf)原创不易,希望大家也能多多支持,目前已经原创了461篇文章,记得在留言区给个三连哦,我们下一篇见!

a29c77827a2da1984cd822938214723b.webp

推荐阅读:

入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径


干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |


趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!


AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影


年度爆款文案


点阅读原文,领廖雪峰大数据视频资料!
good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter