肝了一夜,用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html...
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库。程序如下图所示:
将word文档转换成pdf文件,只需要一行代码即可完成,需要注意的是,为提升程序运行的鲁棒性,可以通过try...except...来捕获错误,防止程序因为异常报错而崩溃。
2).excel、PPT转成pdf
对于excel文件和PPT文件转换成pdf文档,采用win32com库进行转换。程序如下图所示。
程序中对于excel文档和PPT文档的操作非常的类似,因此这里我们已excel文档的操作为例,来进行程序的阐述,首先通过程序xlApp = client.Dispatch('Excel.Application')
创建新的进程,进程中所作用的对象是Excel文件。
接下来程序通过打开一个excel文档,然后通过ExportAsFixedFormat函数将excel保存为pdf文档。函数中第一个参数“0”表示的是输出保存为pdf文档。程序还需要注意的有两点内容:
-根据不同的操作对象,ExportAsFixedFormat函数的形参也是不相同的,大家可以参考微软的官方文档进行查询。
-在进程对excel或者是PPT文档的调用过程中,不能够打开对应的文档,因为在程序执行时,同一个文档不能够被两个进程所占用。
3).markdown文件转PDF
对于md文件的转换,需要借助markdown库和pdfkit库来进行实现。程序如下图所示。
程序将md文件转换成pdf文件需要分为两步来实现,第一步,将md文件转换成html格式的文件,然后利用pdfkit库将html文件转换成pdf文件即可。
4).html转PDF
对于在线的html文档转换成pdf文档,程序如下图所示:
上述的程序中,首先通过交互界面获取到用户输入的url链接,然后通过pdfkit库的from_url函数,即可将在线的html文件转换成pdf文件。
03.交互界面
最后我们通过对于交互界面的展示和程序的讲解,来进一步的理解程序的运行过程吧。对于交互界面,程序是利用tkinter库进行实现,如下图所示:
界面程序非常的简洁,最为核心的包含了五个按钮控件,用来控制运行不同的函数,而Entry控件则是用来获取用户的输入。界面的设计如下:
界面中每个按钮的功能通过它的名字,就能够进行判别,此外,在Entry控件中,大家只需要输入需要抓取的url链接,然后点击html2PDF控件,即可完成在线网页转换成pdf文档。
04.如何获取这个软件:
以上就是今天小编为大家带来的PDF转换器的分享。
原创不易,希望大家也能多多支持,目前已经原创了461篇文章,记得在留言区给个三连哦,我们下一篇见!