乐于分享
好东西不私藏

15份PDF、468页,我让AI替我"签了名"

15份PDF、468页,我让AI替我"签了名"

一个真实的工作场景,一次让我彻底改变工作方式的实验。


一个下午的噩梦

那是一个普通的工作日下午。

领导发来消息:“今天的销售出库单都要有发货人签名,下班前传过来。”

我打开文件夹一看——15个PDF,最少的1页,最多的63页,加起来468页

每一页的右下角,都有一栏"发货人:",旁边跟着一条横线,等待签名。

手动打印、签字、扫描?算了算,这套流程走完,天都黑了。

我盯着屏幕,想了大概三秒钟,打开了AI工具。


“你能帮我把签名放进去吗?”

我把问题直接抛给了AI:

“提取签名.jpg上面的签名,放在这个目录下所有套打开头的PDF的每一页右下角的横线上。”

就这一句话。没有技术细节,没有代码要求,就是最朴素的人话。

AI没有问我"你用的是什么库",也没有让我"先安装环境",而是直接开始分析问题

第一步,它读取了签名图片——一张手写中文名字的JPG,白底黑字,286×160像素。

然后它说:“需要先去掉白色背景,否则签名贴上去会有白色方块遮挡PDF内容。”

我没想到这一层。但AI想到了。


拆解一个看似简单的任务

接下来发生的事,让我意识到这件事并不像"复制粘贴"那么简单。

第一个坑:坐标系不一样

PDF有自己的坐标系——原点在左下角,y轴向上。但分析工具读出来的坐标,原点在左上角,y轴向下。

两套坐标系,方向相反。如果不做转换,签名会贴到页面的完全错误的位置。

AI自动处理了这个转换,公式是:y_pdf = 页面高度 - y_plumber

第二个坑:文件分两种格式

目录里的15个PDF,并不都一样。

有10个是原始的.PDF文件,里面有矢量横线;另外5个是之前处理过截图日期的_modified.pdf,结构略有不同——矢量横线消失了,变成了截图的一部分。

AI用PyMuPDF渲染了两种文件的预览截图,逐像素比对,确认两种格式的签名位置坐标是一致的,可以用同一套参数处理。

第三个坑:防止重复处理

如果脚本运行两次,会不会把同一个文件签名两遍,变成_signed_signed.pdf

AI在代码里加了过滤逻辑:凡是文件名中包含_signed的,跳过不处理。


15分钟后

脚本跑完,终端输出:

套打_销售出库单_2026042708331013.PDF → OK(63页)套打_销售出库单_2026042708342089.PDF → OK(48页)...全部完成,共处理 468 页。

我打开其中一份,翻到最后一页——签名稳稳地落在"发货人:"旁边的横线上,不偏不倚。

从提出需求到全部完成:不到20分钟


我在这件事里做了什么?

说实话,我只做了三件事:

  1. 描述了我的需求
    (一句话)
  2. 提供了签名图片
    (一个文件)
  3. 确认了最终效果
    (看了两眼预览图)

剩下的——分析PDF结构、处理坐标系差异、区分两种文件格式、编写批处理脚本、调试报错、验证效果——全是AI做的。

我没有写一行代码。


这说明了什么?

以前我们对"AI辅助工作"的想象,往往停留在"帮我写个模板"、“帮我翻译一段话”。

但这次的经历让我感受到一个不同的层次:

AI可以接手一个完整的工作流,从理解问题到输出结果,中间的技术细节由它来搞定。

你不需要懂Python,不需要懂PDF结构,不需要懂图像处理。你只需要清楚地知道自己想要什么,然后说出来。

这不是在夸大AI的能力。它也踩了坑,也犯了错,也改了几版代码。但整个过程,我是旁观者,不是参与者。


一点思考

有朋友问我:这样下去,会不会有一天我们什么都不用做了?

我觉得恰恰相反。

当重复性的执行工作被AI接管,留给我们的,是更需要判断力的部分。

比如:这15份PDF需不需要签名?签名应该是谁的?签完之后发给谁、留存在哪里?

这些问题,AI不会替你决定。

它只是一个极其高效的执行者,等你把问题想清楚,然后它来做。


如果你也有类似的重复性文件处理需求,欢迎留言,聊聊你的场景。


农工24小时在线服务

往期

IT小农工

细想来,真不可思议。明明是一生之中最常见的东西,却从来不曾细细瞧上一眼。

批量处理 Word 表格数据?以前干一天,现在 3 分钟!


意见交流、商务合作、农工服务请发邮件至:support@lan.wiki 

或扫下方右侧小程序提交~

如果喜欢点击在看