实测观察结果
| 项目 | 输入 / 参考 | 观察到的输出 |
|---|---|---|
| 子集字体原件 | 담당: 가상팀 / Draft 2026 | 담당: 새문팀 / Final 2027 |
| 包含真实文字的原件 | Delivery date: 2026-10-22 | Delivery date: 2026-10-23 |
| Type0 字体原件 | 담당: 가상팀 / Draft 2026 | 담당: 새문팀 / Final 2027 |
这些观察只适用于本次试验资料,不代表所有 PDF 或阅读器。
发生条件
PDF 可能只嵌入原来使用过的字形。把“담당: 가상팀 / Draft 2026”改成“담당: 새문팀 / Final 2027”需要新文字的映射和字形。能够选择或复制,并不能证明任意新文字都能使用原字体。
实际执行的操作
我们分别用 ReportLab TrueType 子集字体和 pdf-lib Identity-H Type0 文档制作文字。实际 PDF Desk 引擎替换 Tj 操作数,并用独立的 pypdf 检查确认旧文字消失、新的混合文字可正确提取。未使用遮盖图片或整页栅格化。
字体替换会改变什么
韩文替换会嵌入 NanumGothic。保持原字号并不保证字形或宽度相同,因此应用要求确认字体替换,并检查宽度和高度。本例使用同一字体系列,其他原字体的外观可能明显不同。超长替换会被拒绝,不会强行挤入原空间。
自己动手确认
- 下载两个文件,搜索 가상팀 和 새문팀。
- 在工作台打开原件,从页面或右侧列表选择原有文字。
- 比较替换内容,并在应用前确认字体替换。
- 用其他阅读器重新打开保存文件,复制文字,并比较图表和未修改的第二页。
处理方法与例外
没有映射的字体、TJ 数组、竖排、扫描件、隐藏 OCR,以及含表单、标签或链接的文档不在支持范围内。无法选择或排版不合适时,请回到原制作软件修改。新增文本框是另一种操作,会保留原有文字。
可下载检查的文件
- 子集字体原件 (korean-subset-source.pdf)
- 已修改的子集字体文档 (korean-subset-edited.pdf)
- Type0 字体原件 (korean-type0-source.pdf)
- 已修改的 Type0 字体文档 (korean-type0-edited.pdf)
截取坐标、比例、源文件哈希与重新提取结果 · 复核:2026-10-24 · pdftoppm 26.07.0 · pypdf 6.10.0 · pdfplumber 0.11.9。原始 PDF 未修改。
环境、日期与证据范围
检查日期:2026-10-23 · Windows / Chrome 155 · pdf-lib 1.17.1 · PDF.js 6.4.299 · fontkit 1.1.1 · pypdf 6.10.0 · pdftoppm 26.07.0。PDF 和图形为原创;NanumGothic 采用 OFL-1.1。表格和文件记录直接观察结果,说明文字解释其结构。真实操作系统键盘输入、实体手机及所有 PDF 阅读器不在本次试验范围内。
复现代码:scripts/lab-inputs.py、lab-outputs.mjs、lab-derived.py、tests/readiness-browser.mjs 和 tests/lab-pdf.py。



