当前时间: 2026-06-29 11:36:43
分类:办公文件
评论(0)
我做了个PDF工具箱,专治各种“不给编辑”从网上下载的PDF带密码,打印不了。同事发来的扫描件,想把上面那行水印去掉。期末想合并几个PDF发给学生,系统却说“不支持此操作”。翻来翻去就是差一个合适的工具。WPS开会员吧,一年好几百。Adobe Acrobat更不用说了。网上的免费工具吧,不是限页数就是偷偷给文件加水印。我自己是教书的,平时跟PDF打交道不少。前阵子实在忍不了,干脆用Python写了个小工具。没想到越加越多,现在变成了一款五脏俱全的“PDF工具箱”。有些PDF下载下来就有打开密码,或者虽然不用密码但打印权限被锁了。把它拖进工具,点一下“去除密码”,加密文件就变成了普通PDF,想打印就打印。用的是qpdf这个底层工具,速度很快,几十页的PDF几秒钟搞定。PDF里的水印分好几种——有的是文字水印、有的是图片水印、有的是藏在底层代码里的“XObject”水印、还有的是用注释印章盖上去的。不同来源的水印藏的地方不一样。我的做法是:先把PDF从头到尾扫一遍,凡是重复出现在多页的元素都列出来,你可以勾选哪些要删,然后精确地把它从文件里“拆掉”。实测过市面上常见的教辅资料PDF、企业文本文档,大部分水印都能清掉。这个场景很具体:有些PDF页眉页脚有一行“内部资料 请勿外传”或者二维码,想批量去掉。你在预览界面上框出要删的区域(可以设多个),工具会自动把每页对应位置的内容删除。支持预览,删之前就能看到效果。合并在一个 PDF里插入多个文件,调整顺序,一键合并。拆分支持四种模式——每页单独一个文件、每N页一组、奇偶页分开、提取指定页码。基本能覆盖教学中的各种拆分需求了。目前这个版本我自己平时用着还行。如果你也在找类似的工具,可以试试看,有什么问题欢迎留言交流。
基本
文件
流程
错误
SQL
调试
- 请求信息 : 2026-06-29 16:48:41 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/814970.html
- 运行时间 : 0.094778s [ 吞吐率:10.55req/s ] 内存消耗:4,610.59kb 文件加载:145
- 缓存信息 : 0 reads,0 writes
- 会话信息 : SESSION_ID=1e4a41f143c372c19e41de030e09ba08
- CONNECT:[ UseTime:0.000538s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
- SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000831s ]
- SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000336s ]
- SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000224s ]
- SHOW FULL COLUMNS FROM `set` [ RunTime:0.000499s ]
- SELECT * FROM `set` [ RunTime:0.000197s ]
- SHOW FULL COLUMNS FROM `article` [ RunTime:0.000554s ]
- SELECT * FROM `article` WHERE `id` = 814970 LIMIT 1 [ RunTime:0.000410s ]
- UPDATE `article` SET `lasttime` = 1782722921 WHERE `id` = 814970 [ RunTime:0.005909s ]
- SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000272s ]
- SELECT * FROM `article` WHERE `id` < 814970 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000446s ]
- SELECT * FROM `article` WHERE `id` > 814970 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001363s ]
- SELECT * FROM `article` WHERE `id` < 814970 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000708s ]
- SELECT * FROM `article` WHERE `id` < 814970 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000671s ]
- SELECT * FROM `article` WHERE `id` < 814970 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000751s ]
0.096442s