同事发来消息,问我能不能做一个可以擦除PDF的工具。
有时候我们收到的文件是纸质的,为了便于保存,就需要把它扫描成PDF电子版,保存在电脑中,便于查找。
有的文件很多页,会用订书钉订上,然后再下发到手中,有的文件用扫描工具扫描后,因为不是会员的会带有工具自带的二维码,想让这些多余的二维码或者订书订的痕迹去掉,这样更接近于原版信息。
嗯,总结下核心需求是:打开一个PDF文件,让用户可以用鼠标在每一页上框选任意区域,然后自动将该区域的内容擦除,并用该区域的背景色(或周围颜色/纯白色)进行填充。处理完后保存为一个新的PDF。
周末在家有空,那就开始吧。
上次的Claude code插件有问题了,更新赶不上,大神给提供了解决方法,用Claude code chat来代替.
咱也算是做过几个工具了,现在我们就手动建文档,节省点token(money).
找到工具目录文件夹,这里存放着做过的所有工具文件夹,新建一个pdf-bj-tool的文件夹,打开visual studio code,在用里面的
Claude code chat进入到文件夹pdf-bj-tool中,这个文件夹是新建的,什么都没有,所以直接告诉chat需求,让它来分析满足这个需求的工具需要如何做。
我想做一个 PDF 擦除工具。
核心功能:
打开一个PDF文件,让用户可以用鼠标在每一页上框选任意区域,然后自动将该区域的内容擦除,并用该区域的背景色(或周围颜色/纯白色)进行填充。处理完后保存为一个新的PDF。
请将这个核心功能拆分成一个一个小的可单个执行的功能。
我是新手,请你先推荐最适合这个项目的技术方案。
要求:
1. 优先简单
2. 优先本地可运行
3. 不要使用复杂框架
4. 不要一上来做登录、支付、数据库
5. 如果推荐某个库或框架,请用小白能听懂的话解释它负责什么
请先不要写代码。
请先帮我拆开发计划,包括:
1. 推荐技术方案,建议用python实现,便于后期增加功能
2. 项目目录结构
3. 每个文件的作用
4. 开发步骤
5. 可能遇到的问题
6. 最小可用版本应该先做什么
根据chat制定的计划再去优化修改,然后让它执行。
期间遇到个经常重复出现的问题:

账号的「每分钟可处理 Token 数」已经用完了,服务器拒绝了你的新请求。
怎么破:
编辑一份代码给它去解决。
从现在开始,请你按以下规则和我对话,帮我严格控制Token消耗,避免触发429限流(TPM limit reached):
1. 【单次回复极简】 只给核心必要信息,不要任何多余的背景、解释、客套话、总结性文字,直接说重点。
2. 【代码分步输出】 - 不一次性输出完整大文件,只输出当前任务需要修改的**片段代码** - 修改文件时,先告诉我「文件路径 + 修改位置 + 修改内容」,确认后再贴代码 - 每次对话只处理一个文件的一个修改点,不一次改多个文件/多个功能
3. 【上下文精简】 对话过长时,主动帮我总结当前进度,压缩历史冗余信息,减少上下文Token占用
4. 【任务主动拆分】 遇到复杂任务,主动拆成多步执行,每轮只做一步,完成后再进行下一步
5. 【避免重复】 不重复之前说过的内容,不重复贴完整代码,只在必要时贴关键片段
在一步步的完善中,工具终于完成。等等,还有最后一步。
工具是在Mac系统中编辑的,同事的电脑可能是win系统,所以我还需要再加上一句话
请帮我给这个工具创建快捷形式,要求双击后为网页形式显示并要求工具在Mac系统和win系统中都可使用。
看下完成的效果
原pdf如图:

这是去掉标题和页码后的结果:


夜雨聆风