ARTICLE · 1227971
PDF 打码别只盖黑框:PdfCraft 实跑
先说结论:GitHub 上这个叫 PdfCraft 的免费 PDF 工具能直接用来干三件日常事:检查和真正抹掉 PDF 里的敏感信息、给证件复印件加水印再上密码、把手机扫描的大 PDF 压到十分之一。 全程离线,不用注册。缺点也很明显:界面是英文的,中文文字水印和中文 OCR 暂时都不行。
我在服务器上把它装起来,用自己做的一份"租房合同"和一张虚构证件样例从头跑了一遍,下面全是真实输出。
一、它是什么
PdfCraft 是 ArtCraft 团队用 Rust 写的开源 PDF 阅读和编辑器(MIT 或 Apache-2.0 双协议),9 月 30 日建仓库,到我测试时(10 月 22 日)已经有 16983 个星。它有 Windows、macOS、Linux 安装包和网页版,还附带一个命令行工具 pdfcraft-cli,能把同样的功能写成脚本批量跑。
功能清单很长,基本照着 Acrobat 的菜单做:合并拆分、整理页面、表单、签名、注释、加密、打码、压缩、导出 Word。我挑了普通人最常用的几项实测。

PdfCraft 0.11.0 的主界面,左边是 All tools 工具面板
二、安装:Windows 双击,Linux 少一个库
Windows 用户到 Releases 页下载 pdfcraft-0.11.0-windows-x64.msi 双击安装即可(Windows 版我没装,只测了 Linux 版)。Linux 版解压就能跑,但我这台 Debian 13 第一次打开界面直接报错,缺 libxkbcommon-x11,装上后才正常。

Linux 安装全过程,校验和通过,缺的库补上即可
环境:8 核 Xeon、16GB 内存、无显卡的 Debian 13 服务器。没有显卡时它自动退回 OpenGL 渲染,日志里有提示,不影响使用。
三、最值的功能:查出"假打码",再真正抹掉
很多人给合同、截图打码,是在 PDF 上盖一个黑框。看着是黑的,但下面的字其实还在,别人全选复制就能拿到。我做了一份这样的合同:电话和身份证号上盖了黑色矩形。

盖了黑框的合同第 1 页(号码为虚构)
用普通的 pdftotext 一读,号码原样出来。PdfCraft 的 audit 命令专门找这种情况,两处都抓到了,连被盖住的原文都列了出来。

audit 找出 2 处"假打码"
真正的打码要用 Redact(涂黑):先标记要抹的词,再执行,它会把底下的文字删掉再画黑框,保存前还会自己验证一遍。我按号码标记,执行后再读文本,号码没了,audit 也变回 0。界面里对应的是左侧 Redact a PDF。

真正涂黑后,文字层里的号码已经删除
坑:检查不是万能的。我另做了一份在 Word 里给号码加"黑色底纹"再导出的 PDF,看起来一样是黑块,audit 却报告 0 处,而文字照样能读出来;把它导出成 Word,号码也原样在。所以别依赖"检查通过",要打码就直接用 Redact 抹掉,抹完自己复制一下试试。
四、证件复印件:加水印 + 上密码
给中介、房东发身份证复印件时,最好写上"仅供某某使用"。我把两张虚构证件图合成一个 PDF,加水印,再设打开密码。
坑:中文文字水印不支持。 直接写中文,它报错说标准字体画不出"仅"字,目前只支持西欧字符。绕过办法是先把水印字做成透明背景的 PNG 图片,再用"图片水印"贴上去,这条路是通的。

中文文字水印报错,换成图片水印后成功,并加了打开密码

加水印后的效果(证件为虚构样例)
加密后不输密码就打不开(PdfCraft 和另一个阅读引擎 poppler 都要求密码),输对密码正常显示 2 页。默认是 AES-256 加密。
小坑:用没有分辨率信息的图片生成 PDF 时,它按 1 像素 = 1 点算,我这张 1712 像素宽的图变成了约 60 厘米宽的页面。屏幕看没影响,打印时记得选"适合页面"。
五、扫描件压缩:5.0MB 压到 445KB
我把合同按 300dpi 渲染成图片、加了点噪点模拟手机扫描,合成 3 页的"扫描件",5.0MB。用它的 Reduce File Size(界面里是 Compress a PDF),0.7 秒压到 445KB,约为原来的 9%。

压缩前后体积,图片从 300ppi 降到 150ppi

同一段文字放大对比:上为原件,下为压缩后
压缩后的图片分辨率是 150ppi,正文放大看依然清楚。办事网站常见"PDF 不超过 2MB"的限制,这一步就够用。
六、合并、挑页、拆分:秒出
把打完码的合同和证件 PDF 合成一份,再挑出第 1、4、5 页,或者一页拆成一个文件,都是一条命令。合并后的文件还会自动给每个原文件建一个书签。界面里用 Organize pages 可以直接拖页面排序。

合并、挑页、拆分、旋转加标题,四条命令

Organize pages 视图,右侧书签按原文件自动分组
七、没跑通的和不建议的
八、谁适合用
- 适合
:经常要给合同、截图、证件打码或加水印的人;要把扫描件压小上传的人;不想把敏感文件传到在线 PDF 网站的人。 - 不太适合
:完全看不懂英文菜单的长辈;需要中文识字(OCR)的人。 - 程序员加分项
: pdfcraft-cli有 171 个可编排的工具,能写成 JSON 脚本批量跑,还能当 MCP 服务给 AI 助手调用。
一句话:它还很新(0.11 版),但打码、水印、压缩这几样已经能放心用,尤其是"假打码检查 + 真涂黑",值得每个经常发 PDF 的人知道。
你被"黑框打码"坑过吗?或者有想让我实跑的 GitHub 项目,留言告诉我。觉得有用,转给公司里负责发合同的同事。
AI 辅助创作:本文由 AI 辅助撰写。所有命令均于 2026-10-22 在 8 核 Xeon、16GB、无显卡的 Debian 13 服务器上用 PdfCraft 0.11.0 Linux 版实际运行,截图为真实输出(终端截图做了排版和省略);Windows、macOS 版未测试。合同、证件均为自制虚构样例,扫描件为合同渲染后加噪模拟。星标数为 2026-10-22 查询时的数字。项目地址:github.com/storytold/pdfcraft















































































