社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

牛逼,我用Python做了一个word、PPT水印添加器!还带加密功能!

菜鸟学Python • 4 年前 • 586 次点击  

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

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



大家在日常的工作学习中,会遇到将word或者是PPT转换成PDF文档,并分享pdf文档,但是大家在分享文档的同时,有时候会想要添加属于自己的logo水印,防止他人的抄袭。


今天,小编就带领大家用Python做一个水印添加器小程序,让大家能够为word和PPT文档添加水印,一起来看看吧。


01.程序讲解

通过视频的展示,我们可以发现,软件主要是通过选择本地的word或者是ppt文件,然后将其转换为pdf文档后,再通过水印添加的方式,完成最终版本的制作。对应到程序中,核心程序可以分为以下几个步骤:

  • word、ppt转换为word_pdf,ppt_pdf

  • mark_pdf水印文档的制作

  • 将word_pdf、ppt_pdf同mark_pdf融合

接下来,我们就针对于上述的三个部分来进行对应程序的分析。


02.word、ppt转换为word_pdf,ppt_pdf

对于word和ppt文档的转换,其程序内容大致类似,都是用到了comtypes库来进行转换,这里我们以word文档的转换为例,程序如下图所示。

程序中首先通过传入的word文档地址,构造了对应的pdf文档的保存路径,然后通过comtypes库中的CreateObject函数创建word操作对象,并将word文档的内容以pdf格式进行输出保存。并返回了pdf文档的保存地址。其转换后的内容如下图所示。


03.mark_pdf水印文档的制作

在将word文档转换成pdf文档后,接下来我们就要去制作水印的pdf,从视频的展示中,我们获知了,需要从界面中输入水印的内容,在水印制作的程序中,我们就要用到这一点,程序如下图所示:

程序首先创建了一个空的pdf对象cvas,然后设置了pdf中水印的各种属性,并在pdf中,在pdf文档中的页面的上下左右四角中,写入我们通过界面传入的水印内容。如下图所示:

04.将word_pdf、ppt_pdf同mark_pdf融合

完成上面的两步后,我们已经得到了pdf文档内容和水印PDF文档,接下来,就是通过程序将两个pdf文档进行融合,程序实现的目的是将pdf文档中的每一页都和水印pdf文档的第一页进行融合,获得最终的融合pdf文档。程序如下图所示:

程序首先设置了水印pdf文档的属性,这里可以看到程序传入了我们想要设置的水印内容,然后程序通过调用第二步骤中的self.createMark函数来制作水印pdf文档。通过for循环,将word或者是ppt文档中的每一页都添加水印后,将最终合成的pdf文档进行加密处理,保存到本地的文件中。合成的结果如下图所示。

如果大家选择了对pdf文档进行加密处理的话,在打开pdf文档时,会弹出提示框,需要大家输入密码后才能查看pdf的内容,当然密码的输入也是通过界面进行输入的,在视频展示中给出了操作的方法。


05.总结

以上就是小编今天为大家分享的水印添加器软件,大家可以获取软件,来进行实验,原创不易,记得给个三连哦!


如何获取本篇软件:

在下面的公众号「菜鸟编程大本营」后台输入: 小助手,找他拿,暗号(水印添加器)




推荐阅读:

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


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


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


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


年度爆款文案





    
点阅读原文,领全套AI资料!

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/113930
 
586 次点击