我的建议是使用 Ghostscript 8.71。然后使用这个命令行:
gswin32c.exe ^
-sDEVICE=pdfwrite ^
-o thermrad-out.pdf ^
-dPDFSETTINGS=/printer ^
10.axd
那应该可以将PDF转换为不再有问题的PDF。因为原始 .axd 文件确实存在嵌入字体的问题。(我正在使用pdffonts.exe
XPDF 套件进行检查)。问题出现在 10.axd 的第 3 页:
for /l %i in (1,1,16) do (
echo. ............ Page %i ............................... ^
& pdffonts.exe -f %i -l %i 10.axd ^
& echo.)
输出这个:
[....]
............ Page 3 ...............................
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 249 0
XCZBKH+HelveticaNeue-Light Type 1C yes yes yes 250 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 15 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 19 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 41 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 45 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 49 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 53 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 57 0
Error: Illegal entry in bfchar block in ToUnicode CMap
YCRHYF+HelveticaNeue-LightExt Type 1C yes yes yes 61 0
[....]
在我让 Ghostscript 修复它之后,修复后的 PDF 中第 3 页的问题就消失了:
c:\> pdffonts.exe -f 3 -l 3 thermrad.pdf
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
CZBBTM+HelveticaNeue-LightExt Type 1C yes yes no 13 0
MXETZY+HelveticaNeue-Light Type 1C yes yes no 40 0