工具说明
PDF 不是为逐字改写设计的格式:它记录的是「在这个位置用这个字体画这些字形」,没有段落回流的概念。所以浏览器里可靠的「编辑 PDF」,做的是在原页面之上叠加一层新内容——补一段说明、签个名、圈出问题、用色块盖掉写错的数字,而不是像 Word 那样重排正文。
这个工具用 pdf.js 把每一页渲染成图片供你定位,你在页面上添加的文字、画笔、高亮和图片会作为一层透明标注保存下来;导出时用 pdf-lib 把这层标注盖回对应页面。原页面的文字、书签和页面结构不会被重写,导出后的正文依然可以选中和复制。整个过程在你的浏览器里完成,文件不会上传服务器。
使用步骤
上传 PDF 并等待渲染
页面逐页渲染成可定位的底图,页数越多耗时越长,大文件建议先用拆分工具取出需要修改的部分。
选择工具并在页面上标注
文字用于补充说明和填写空白,画笔用于签名和手写批注,高亮用于半透明标记,方框勾选「填充」后可以盖住写错的内容。
逐页检查后导出
用上一页 / 下一页切换,每页的标注会各自保存;点击保存后只有有标注的页面会被写入新的图层。
支持范围与限制
- 编辑方式
- 在原页面上叠加标注图层,不改写原有页面对象
- 可用标注
- 文字、自由画笔、半透明高亮、矩形(描边或填充)、插入图片
- 原文字层
- 保持不变,导出后正文仍可选中、复制和检索
- 多页处理
- 每页标注独立保存,导出时只处理有标注的页面
- 标注清晰度
- 按页面显示尺寸的 2 倍导出标注图层,约 144–216 DPI
- 旋转页面
- 按页面的 /Rotate 值换算坐标,横向扫描件上的标注不会错位
- 文字语言
- 文字标注以图层形式绘制,中文、日文等非拉丁字符不需要额外嵌入字体
- 处理位置
- 渲染、标注和写回全部在浏览器本地完成,文件不上传
典型使用场景
签署和回填表单
把签名照片或透明背景签名图插入到签字栏,再用文字工具填写日期和姓名,不必打印后再扫描。
评审意见直接写在稿件上
用高亮标出有问题的段落,旁边加一段文字说明,对方打开 PDF 就能看到批注位置。
遮盖写错的信息
用填充方框盖住打错的金额或过期的联系方式,再在上面写正确内容,适合来不及重新生成源文件的场合。
使用前需要知道的事
- 这是叠加编辑,不能改动原有文字的内容和排版。要改正文请回到源文件重新导出 PDF。
- 填充方框只是盖住视觉上的内容,被盖住的文字仍在文件的文字层里,可以被复制或提取,不能当作脱敏和涂黑使用。
- 导出会重写文件,已有的数字签名会因此失效;加密 PDF 需要先解除密码再编辑。
相关概念
- 内容流(content stream)
- PDF 页面里记录绘制指令的部分。叠加编辑是在原内容流之后追加新的绘制指令,原指令保持不变。
- /Rotate
- 页面的显示旋转角度,取值 0/90/180/270。阅读器按它旋转页面显示,但页面坐标系本身不变,所以标注需要换算后才能对齐。