ghostscript在pdf转图片的时候会经常报错缺少CID Frot。类似如下信息
Can't find CID font "STSong-Light".
Attempting to substitute CID font /Adobe-GB1 for /STSong-Light, see doc/Use.htm#CIDFontSubstitution.
这会导致pdf在转图片的时候数字重叠或者文字重叠,如图所示
一 :报错缺少AdobeHeitiStd-Regular AdobeSongStd-Light AdobeKaitiStd-Regular
主要是Adobe公司有自己的一套字体和版权。
可以安装一个最新完整版的Adobe Reader ,找到C:\Program Files (x86)\Adobe\Acrobat11.0\Resource\CIDFont 下的全部.otf文件。
拷贝到服务器的/usr/share/ghostscript/9.26/Resource/CIDFont/ 下,注意重命名时去除后缀.otf
例如:
sudo cp /mnt/d/AdobeHeitiStd-Regular.otf /usr/share/ghostscript/9.26/Resource/CIDFont/AdobeHeitiStd-Regular
二:缺少STSong-Light
这套字体全网都在找,没有找到。后来查资料发现是Adobe找华文定制的一款文字。应该是加密存在系统的内部,全网都没有找到这个字体的otf文件。但是还是被我从一片博客里找到了解决方案:
https://www.cdsy.xyz/computer/system/linux/230717/cd44731.html
首先打开这个文件sudo vi /etc/ghostscript/cidfmap.d/90gs-cjk-resource-gb1.conf
看到当ghostscript找不到STSong-Light 时会替换回后面的字体。这个时候把这个替换的字体改成Adobe对应的字体就可以了。
如上图所示。
然后执行
sudo update-gsfontmap
之后就不会出现字体找不到的情况了。字体也不会重叠。恢复正常。