解决Adobe Acrobat打开PDF文件可能存在的乱码问题

🚀 ​​通过Puppeteer导出的PDF文件,其中部分字体在Acrobat中存在显示乱码问题的一种解决思路。​​

🔍 ​​问题核心​​

  • ​环境​:Linux + Puppeteer
  • ​症状​:Adobe Acrobat中思源黑体CN显示乱码 但WPS和浏览器正常
  • ​根因​:查了资料应该是OTF字体格式与PDF渲染引擎的兼容性问题

📋 ​​完整解决步骤​​

第一步:获取正确的字体

  1. ​​官方源获取​​:

    arduino 复制代码
    https://github.com/adobe-fonts/source-han-sans
  2. ​​转换OTF为独立TTF​​:

    我是在本地Windows使用 otf2ttf 将OTF转为TTF 感觉转换前后有点差异 但是目前似乎不影响最终效果 后续可能继续研究下更好的方法

    shell 复制代码
    pip install otf2ttf
    otf2ttf .\SourceHanSansCN-Bold.otf     
  3. ​​输出文件​​:

    • SourceHanSansCN-Regular.ttf
    • SourceHanSansCN-Medium.ttf
    • SourceHanSansCN-Bold.ttf
    • 其他字号

第二步:部署新字体系统

bash 复制代码
# 移除问题字体
sudo rm /usr/share/fonts/chinese/SourceHanSansCN*.otf

# 部署新TTF
# sudo cp *.ttf /usr/share/fonts/chinese/
# 我这里是直接上传的
sudo chmod 644 /usr/share/fonts/chinese/*.ttf

# 重建字体缓存
sudo fc-cache -fv

# 验证安装
fc-list | grep -i "Source Han Sans CN"

第五步:生成后验证

至此重新生成PDF之后乱码问题就解决了。

相关推荐
Hilaku10 分钟前
一个前端工程师除了写代码,还能靠什么赚钱?
前端·javascript·程序员
爱勇宝1 小时前
年轻时,给自己培养一个能留下作品的爱好
程序员
高晶13 小时前
Android 新手实战:从零搭建 WebRTC 在线直播系统
android·程序员
寒狼GPT17 小时前
Codex 5小时额度是固定重置还是滚动恢复?为什么每个人Reset时间不一样
chatgpt·程序员·ai编程
newerp18 小时前
GC Pacer 调优算法:GOGC、GOMEMLIMIT 与容器 OOM 防御
后端·程序员·go
newerp18 小时前
逃逸分析、栈分配与 sync.Pool 对象池
后端·程序员·go
kyriewen20 小时前
我逐个测了 JSON.stringify 的 7 个坑:第 1 个就在丢数据
前端·javascript·程序员
SimonKing1 天前
零大模型依赖!SQLite FTS5 + jieba 打造纯本地知识库搜索
后端·python·程序员
Hilaku1 天前
为什么我劝应届生不要去创业公司写前端?
前端·javascript·程序员
前端双越老师1 天前
程序员 1v1 访谈系列第一期:转行也不会等到失业以后
程序员·agent·全栈