取自Ghostscript 错误报告:
首先,我尝试编辑 cidfmap 文件,在其中添加以下行:
/Arial-BoldMT << /FileType /TrueType /Path
(C:/WINDOWS/Fonts/ARIALBD.TTF) /SubfontID 0 /CSI [(Unicode) 0] >> ;
/Arial-ItalicMT << /FileType /TrueType /Path
(C:/WINDOWS/Fonts/ARIALI.TTF) /SubfontID 0 /CSI [(Unicode) 0] >> ;
/ArialMT << /FileType /TrueType /Path
(C:/WINDOWS/Fonts/arial.ttf) /SubfontID 0 /CSI [(Unicode) 0] >> ;
/TimesNewRomanPSMT << /FileType /TrueType /Path
(C:/WINDOWS/Fonts/timesi.ttf) /SubfontID 0 /CSI [(Unicode) 0] >> ;
这将允许正确呈现文档但符号不可读,我尝试使用编码设置但没有运气,显示相同的不可读符号。
然后我定义了一个小字典:
/tempfontsdict 1 dict def tempfontsdict
begin
/Arial-BoldMT (C:/WINDOWS/Fonts/ARIALBD.TTF) def
/Arial-ItalicMT (C:/WINDOWS/Fonts/ARIALI.TTF) def
/ArialMT (C:/WINDOWS/Fonts/arial.ttf) def
/TimesNewRomanPSMT (C:/WINDOWS/Fonts/timesi.ttf) def
End
并更改了 pdf_font.ps:
dup /FontFile knownoget not {
dup /FontFile2 knownoget not {
dup /FontFile3 knownoget not {
%//null
+ dup /FontName get
+ /tempFontName exch def
+ tempfontsdict tempFontName known {
+ dup /FontName get (Custom font change:)
print ==
+ tempfontsdict tempFontName get
+ /tempFontFile exch def
+ dup /FontFile3 << /F tempFontFile >>
put
+ dup /FontFile3 get
+ } {
+ //null
+ } ifelse
} if
} if
} if
这解决了问题,但看起来不是解决问题的好方法。