解决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之后乱码问题就解决了。

相关推荐
程序员西西1 天前
SpringBoot轻松整合Sentinel限流
java·spring boot·后端·计算机·程序员
程序员西西1 天前
SpringBoot整合JWT实现安全认证
java·计算机·程序员·编程
峰中有多云1 天前
Python 内置函数---getattr()的使用
程序员
文心快码BaiduComate1 天前
用文心快码写个「隐私优先」的本地会议助手
前端·后端·程序员
KevinWang_1 天前
工具推荐 - 沉浸式翻译 Chrome 插件
程序员
小兵张健1 天前
离职三个月后
程序员
大模型教程1 天前
一张图拆解 AI Agent 的“五脏六腑”,从感知到进化的完整逻辑!
程序员·llm·agent
AI大模型1 天前
一文了解LLM应用架构:从Prompt到Multi-Agent
程序员·llm·agent
SimonKing1 天前
像CAD制图一样,使用Java绘图标注图片的瑕疵
java·后端·程序员
cipher2 天前
删库之夜·Ω诡计
数据库·程序员