内容目录
当 pdf 中包含 STSONG-light 字体时,会导致 pdf 转图片时,文字丢失。这是因为 GHostscript 默认配置的问题。在 Docker 中往往会出现这个问题。
查看 Ghostscript 配置文件:
cat /etc/ghostscript/cidfmap.d/90gs-cjk-resource-gb1.conf
部分内容如下:
/Song-Medium /GBZenKai-Medium ;
/STSong-Light /BousungEG-Light-GB ;
/STFangsong-Light /BousungEG-Light-GB ;
/STHeiti-Regular /BousungEG-Light-GB ;
/STKaiti-Regular /BousungEG-Light-GB ;
/Adobe-GB1 /BousungEG-Light-GB ;
/Adobe-GB1-Bold /GBZenKai-Medium ;
把 windows 下的 simsun.ttc 字体复制,放到容器中。
如果需要添加其它字体,可以放到 /usr/share/fonts/opentype/
下,创建一个自定义命令再将字体放进去。
然后修改 /etc/ghostscript/cidfmap.d/90gs-cjk-resource-gb1.conf
文件,替换 ST 开通的字体路径为 simsun.ttc 文件。
如下所示:
/BousungEG-Light-GB << /FileType /TrueType /Path (/usr/share/fonts/truetype/arphic/uming.ttc) /SubfontID 0 /CSI [(GB1) 4] >> ;
/GBZenKai-Medium << /FileType /TrueType /Path (/usr/share/fonts/truetype/arphic/ukai.ttc) /SubfontID 0 /CSI [(GB1) 4] >> ;
/Song-Medium /GBZenKai-Medium ;
/STSong-Light <</FileType /TrueType /Path (/usr/share/fonts/opentype/myfonts/simsun.ttc) /SubfontId 0 /CSI [(GB1) 4] >> ;
/STFangsong-Light <</FileType /TrueType /Path (/usr/share/fonts/opentype/myfonts/simfang.ttf) /SubfontId 0 /CSI [(GB1) 4] >> ;
/STHeiti-Regular <</FileType /TrueType /Path (/usr/share/fonts/opentype/myfonts/simhei.ttf) /SubfontId 0 /CSI [(GB1) 4] >> ;
/STKaiti-Regular <</FileType /TrueType /Path (/usr/share/fonts/opentype/myfonts/simkai.ttf) /SubfontId 0 /CSI [(GB1) 4] >> ;
/Adobe-GB1 /BousungEG-Light-GB ;
/Adobe-GB1-Bold /GBZenKai-Medium ;
然后执行 update-gsfontmap 命令刷新配置。
文章评论