一、拍摄这一步决定了后面能不能救
用手机拍文档,最后成品好不好,八成在按快门那一刻就定了。软件能纠正的是几何变形,纠正不了信息缺失。拍之前把这几件事做到,后面几乎不用返工:
- 纸张放平:透视校正的数学前提是「被拍的是一个平面」。摊开的书页中缝会拱起来,那是曲面变形,四点变换纠正不了,只能压平再拍。
- 四个角都要进画面:算法需要四个顶点来定位。缺一个角就只能凭猜,结果一定歪。
- 别用手指压住角:手指遮住角点,既影响自动估边,也影响你手动拖角。
- 光线均匀,避开反光:斜射光造成的阴影会让后续的二值化把阴影区整片压黑。玻璃白板尤其要避开灯的正反射。
- 别贴太近拍:距离太近会引入镜头本身的桶形畸变,表现为纸张边缘呈弧线。透视校正处理的是平面投影,处理不了镜头畸变,退后一步用中焦段拍更稳。
- 让背景和纸张有明暗差:白纸放在白桌面上,自动估边会找不到边界,你得手动拖四个角。
二、透视校正:四点定位背后做了什么
图片透视校正 的原理并不神秘。你在预览图上把四个角点拖到目标区域的四个顶点,工具就有了四对对应点:源图上的四个坐标,和输出矩形上的四个坐标。四对点刚好能唯一确定一个投影变换矩阵,也就是把倾斜拍摄的平面映射成正视图的那个变换。
关键在后半步:拿到矩阵之后,不是把源像素往目标位置推,而是反过来——遍历输出图的每一个像素,用矩阵的逆变换算出它在源图上对应的位置,再用双线性插值从周围四个像素采样出颜色。这个「反向映射加重采样」的顺序很重要,正向推会在目标图上留下没被覆盖到的空洞,画面看起来像被拉花了;反向映射保证每个输出像素都有值,所以拉正之后不会出现拉伸模糊。工具会先自动估算一次边界作为四个角点的初始位置,多数照片微调一下就行。
输出比例可以保持自动,也可以强制成 A4 竖版或横版、1:1、4:3、3:4、16:9。要打印或者归档就直接选 A4,省掉后面在 PDF 里再对齐纸张的麻烦。三种画面增强按用途选:
- 自动色阶:按明暗分位拉伸对比度。适合光照偏暗但整体均匀的照片,保留彩色。
- 扫描件模式:转灰度并把背景压白。文字类文档首选,出来的效果最接近扫描仪,也最利于后续做 OCR。
- 二值模式:直接转黑白两色。只有纯文字、且原图对比足够强时才用,浅色铅笔字和淡印章会被整片抹掉。
角点顺序要按左上、右上、右下、左下依次对准,顺序错了会得到镜像或旋转的结果。全部处理在浏览器本地完成,照片不上传服务器。
三、多图合成 PDF:页序与页面尺寸怎么选
拉正之后的单张图片还不是交付物,对方要的通常是一个 PDF。多图合成 PDF 把多张图片按你指定的顺序合成一个文件,每张图占一页。
页序是最容易出错的环节。可以一次或多次选择图片、拖拽批量加入,然后用缩略图下方的上移、下移、删除按钮调整。经验做法是在上传之前先把文件名按页码排好,比如 01.jpg、02.jpg,加入之后基本不用再调;上传时一次性全选,比分几次拖进来更容易保持顺序。合成前一定要把缩略图从头到尾扫一遍,PDF 生成之后再想插页就得重来。
页面尺寸的选择取决于这份文件的用途:
- 跟随图片:页面尺寸等于图片尺寸,屏幕上看没有一丝留白,最忠实。它还提供 72、96、150、300 DPI 四档折算,用来决定「这么多像素折算成纸张有多大」。举例来说,一张 2480×3508 像素的图按 300 DPI 折算,差不多就是一张 A4。
- 固定 A4 或 Letter:工具会自动判断每页该横放还是竖放。要打印、要走审批流程、要和别人的文件订在一起,就选这个。
- 页边距与底色:图片比例和纸张不一致时,多出来的区域用底色填充。打印留白选白色,屏幕阅读想省眼可以选浅灰。
图片编码有两种策略,直接决定成品体积。「保留原始数据」会把 JPEG 与 PNG 原样内嵌,画质与体积都不变,适合需要保真的场景;「统一转 JPEG」会重新编码,体积能明显下降,扫描件和照片用它最划算。注意 WebP、GIF、BMP 因为 PDF 规范限制必须转码,工具会自动处理,这一步无法保留原始数据。
四、纯色背景转透明:适用前提比参数更重要
纯色背景转透明 靠颜色相似度判断背景,所以它能不能用,取决于两个前提:背景要足够纯,主体边缘与背景的对比要足够明显。白底商品图、纯色底 Logo、软件截图都符合;室外照片、有渐变的影棚背景、和背景撞色的主体都不符合,这类图片应该改用证件照生成里的 AI 抠图,参数调再久也没用。
上传后工具会自动取四角的颜色作为背景色,判断错了就直接在预览图上点一下真正的背景处重新吸色。剩下的参数按这个顺序调:
- 先定范围:「仅与边缘连通」从图片四边向内蔓延,主体内部的同色区域会被完整保留。拍白衬衫、白色文字、白色器皿时必须用它,否则衣服会被一起抠掉。「整图所有相似颜色」适合 Logo 这种主体内部不含背景色的图。
- 再调容差:背景没抠干净就调大,抠到主体了就调小。JPEG 压缩会让「纯白」背景实际带上一层噪点,所以对 JPEG 原图容差要比 PNG 略大一点。
- 最后修边:轮廓有锯齿就调大「边缘过渡」,让边缘半透明淡出;白底图常见的那一圈灰白,勾选「去除边缘残留色边」抹掉。
判断结果的方法很简单:看棋盘格。透明区域会显示成棋盘格,主体内部如果出现棋盘格,说明容差过大或者范围选错了。确认无误再导出 PNG——只有 PNG 保留透明通道,导出成 JPEG 透明区会变成实色。
五、表情包的文字排版:别让字压住脸
表情包制作 提供两种排版,选择标准很明确:
- 压在图上:经典的白色粗体加黑色描边,直接盖在画面上。适合背景空、主体居中的横图,文字放在上下的空白处。
- 上下加白边:在图片外扩出白色区域写字,完全不遮挡画面内容,竖图默认用这种。截图配字、需要写长句子时用它。
有两个参数的设计值得利用:字号按图片宽度的百分比设置,描边粗细按字号的百分比计算。这意味着你调好一套参数之后,换一张分辨率完全不同的图,视觉比例是一样的,不会出现「换张大图字就变小」或者「字小边粗」的问题。文字会自动换行,中文按字符断行、英文按单词断行,你手动敲的换行会被保留。
排版上几条建议:字号控制在图片宽度的 8% 到 12% 之间,一行别超过 12 个字,超了就手动敲回车拆成两行,读起来比自动折的长句舒服。顶部文字写铺垫、底部文字写反转,是最常见也最好用的结构。文字位置尽量避开人物的脸和手,尤其是眼睛——表情包的信息量主要在表情上,压住脸就等于把重点盖掉了。白底图配白字时工具会自动改成深色以保证可读,但仍建议自己确认一遍预览。做好之后可以直接复制到剪贴板粘进聊天窗口,也可以下载 PNG 或 JPEG。
常见问题
透视校正之后文字还是模糊,是工具精度不够吗?
大概率是原图就没拍清楚。透视校正做的是几何变换加重采样,它能把梯形拉成矩形,但不能凭空增加细节——原图糊、有手抖、对焦跑了,校正之后照样糊,而且拉伸区域会显得更糊。另一种常见情况是拍的其实是曲面,比如摊开书本的中缝区域,四点变换假设被摄物是平面,弧形变形它处理不了。这两种情况都只能重拍:把纸压平、光线给足、退后一点拍。
合成 PDF 之后文件几十兆,怎么减小?
把图片编码从「保留原始数据」改成「统一转 JPEG」,再把质量往下调,通常能降一个数量级。手机原图动辄四千像素宽,作为文档页面远超需要。如果是文字类扫描件,在透视校正那一步就选「扫描件」增强,转成灰度并压白背景之后,图片本身的体积就已经小很多,再合成 PDF 会更省。
白底商品图抠完,衣服和白色部分也没了怎么办?
把范围从「整图所有相似颜色」换成「仅与边缘连通」。前者是全图搜索所有接近背景色的像素,白衬衫自然会被一起判成背景;后者从图片四边向内蔓延,只处理与边缘相连的那片区域,主体内部被主体轮廓挡住,不会被误伤。换完之后如果边缘还有残留,再微调容差和「去除边缘残留色边」。
表情包的字为什么换一张图就比例不对了?
如果你用的是绝对像素字号,换图必然出问题。这个工具的字号是按图片宽度的百分比设置的,描边也按字号百分比算,正是为了避免这个问题——只要你调的是百分比,换任何分辨率的图,视觉比例都保持一致。出现比例不对,通常是新图的长宽比差别太大,比如从横图换成了竖图,这时候把排版方式改成「上下加白边」会比继续压在图上更合适。