代码功能概述
该Python代码利用tkinter库创建了一个图形用户界面(GUI)应用程序,主要功能是批量为指定文件夹及其子文件夹中的PDF文件添加文字水印,并可选择在页面顶部和底部添加指定文本内容。处理后的文件会保存在原文件夹下新建的processed_file文件夹中。
用户操作步骤
- 选择文件夹:点击“选择文件夹”按钮,选择包含PDF文件的目录。
- 输入水印内容:在“输入水印内容”框中输入要添加的水印文字。
- 可选操作:
- 在“输入顶部文本内容(可选)”框中输入页面顶部要添加的文本。
- 在“输入底部文本内容(可选)”框中输入页面底部要添加的文本。
- 调整“顶部距离页面顶部的百分比(默认4%)”和“底部距离页面底部的百分比(默认4%)”输入框,设置顶部和底部文本距离页面边缘的百分比。
- 勾选“处理成功后删除源文件”,可在处理成功后删除原始PDF文件。
- 开始处理:点击“开始程序”按钮启动处理过程。
- 查看日志:处理过程中的信息会显示在日志框中,可通过“清空日志”按钮清空日志。
- 终止任务:在处理过程中,可点击“结束任务”按钮终止处理。
实例验证
假设我们有如下文件夹及文件结构:
project_folder
│
├── pdf_folder
│ ├── file1.pdf
│ ├── file2.pdf
│ └── sub_folder
│ └── file3.pdf
└── main.py
- 运行
main.py启动程序。 - 点击“选择文件夹”,选择
pdf_folder。 - 在“输入水印内容”框中输入“机密文件”。
- 在“输入顶部文本内容(可选)”框中输入“重要信息”,在“输入底部文本内容(可选)”框中输入“仅供内部使用”。
- 点击“开始程序”。
- 处理完成后,会在
pdf_folder下生成processed_file文件夹,其中包含添加了水印和顶部、底部文本的file1.pdf、file2.pdf以及sub_folder/file3.pdf。如果勾选了“处理成功后删除源文件”,则pdf_folder下的原始PDF文件会被删除。
对子文件夹的支持
该代码支持对子文件夹穿透,会递归处理指定文件夹及其所有子文件夹中的PDF文件,除了processed_file文件夹中的文件。在收集PDF文件时,代码会使用rglob方法排除processed_file文件夹中的文件,确保不会重复处理已经处理过的文件。
python版本:3.86
是否带UI界面:UI版本
电脑系统版本:win10 64位 专业版系统(这是测试环境,其他环境也可以32位操作系统可能需要调整代码,让AI去转换即可)
脚本使用到的库:使用pycharm编辑器,如果没有安装相关库,会自动标红提示,鼠标放到标红的地方会弹出安装库按钮
重要提示:这是源代码,需要安装python使用,也可以自行修改部分代码实现想要的功能
查看源代码
- 随机文章
- 热门文章
- 713-批量以所在文件夹名批量按顺序重命名文件名-与系统排序相同
- 714-批量按指定数量分割源文件夹下文件到目标文件夹下
- 715-批量对指定文件夹下各子文件夹下所有子孙文件夹内文件提取-提取到各一级子文件夹根目录-并删除空文件夹
- 720-批量对指定文件夹下所有txt截取每个txt中指定内容作为每个文件的文件名
- 750-批量删除指定文件夹下指定文件
- 755-批量根据excelA-B列内容移动文件夹到目标文件夹
- 760-批量将文件提取到指定文件夹下各子文件夹的根目录,并删除空文件夹-对子孙文件夹均有效
- 765-批量删除指定文件夹下文件和文件夹名中指定的字符或符号
- 781-按照创建日期-最后修改日期提取文件名到excell
- 使用docsify配合github搭建个人知识库




还没有评论,来说两句吧...