2 回答
TA贡献1860条经验 获得超9个赞
您没有提供要查看的原始 PDF 文件,也没有提供 Ghostscript 的反向通道输出,这使得很难确定您的问题是什么。
不过我猜你的问题是 PDF 文件可能会请求“PMingLiU”,但它不包含字体(或 CIDFont)的副本。在这种情况下,Ghostscript 将在反向通道上提供警告,并使用替代字体。如果丢失的字体是 CIDFont(很可能),那么它会根据成功的可能性进行一系列尝试。在这种情况下,它可能会回退到倒数第二个选项,并使用 DroidSansFallback 来替换丢失的字体。
您有两种选择来“修复”此问题:
1) 创建嵌入字体的 PDF 文件。这是迄今为止最好的解决方案,是 CIDFonts 的要求(尽管许多生产商忽略了这一点),并且是保证获得正确输出的唯一方法。
2)为Ghostscript提供更好的替代字体。为此,您需要知道丢失的字体是 Font 还是(更有可能)错误的 CIDFont。如果缺少 Font,那么您需要修改 fontmap.gs 并添加替代品,如果缺少 CIDFont,那么您需要编辑 cidfmap。您可以修改 Ghostpdl/Resource/Init 中的副本或创建新文件。无论哪种情况,您都需要告诉 Ghostscript 哪个目录包含要使用的副本。您可以通过使用 -I 开关提供路径来完成此操作。
既然您说这是您自己的应用程序,并且您正在使用 Ghostscript DLL,那么我请您注意提供 Ghostscript 的许可证。这是 AGPL v3,因此您必须提供自己的应用程序源代码(除其他外)才能遵守许可证。
- 2 回答
- 0 关注
- 88 浏览
添加回答
举报