我的系统配置是带有 GhostScript 9.02 的 OS X 我想知道(逐步)如何在 GS 中添加和配置文件,以便可以替换字体。我的 GS 安装没有安装/创建文件。我怎样才能添加它?
问题是我有一个包含所有嵌入子集字体的 PDF,除了一个。而对于这个 GS 不能光栅化页面。
怎么可能解决这个问题?
我的系统配置是带有 GhostScript 9.02 的 OS X 我想知道(逐步)如何在 GS 中添加和配置文件,以便可以替换字体。我的 GS 安装没有安装/创建文件。我怎样才能添加它?
问题是我有一个包含所有嵌入子集字体的 PDF,除了一个。而对于这个 GS 不能光栅化页面。
怎么可能解决这个问题?
PDF 中有两类字体——“常规”字体和 CIDFonts。对于常规字体,每个字形仅使用一个字节,并且 PDF 中将提供编码和其他信息以从字体中选择字形。Ghostscript 将根据 FontName 猜测替代字体,虽然它可能看起来不像原始字体,但它应该打印出来。
然而,CIDFonts 通常使用多个字节进行访问,并且该名称暗示了将字节流正确解码为字形数字所需的一些 CMap。另一个“陷阱”是特定字形的字形编号会因“排序”而异。对于未嵌入的 CIDFonts,Ghostscript 会产生如下错误输出:
找不到 CID 字体“KozMin-Bold”。 将 CID 字体 /Adobe-Japan1 替换为 /KozMin-Bold,请参阅 doc/Use.htm#CIDFontSubstitution。 也没有提供替代 CID 字体“Adobe-Japan1”。将退出并出现错误。
这告诉您的是 PDF 引用了指定订购“Adobe-Japan1”的字体“Kozmin-Bold”,并且:
1) 在 Ghostscript 的 Resource/CIDFont 目录中找不到 Kozmin-Bold 字体
2) 在 cidfmap 文件中没有为 Kozmin-Bold 定义映射(GS 在“gs -h”中列为“搜索路径”的任何 LIBPATH 中搜索此文件。
3) cidfmap 中没有使用 Adobe-Japan1 Ordering 的字体映射。如果 Ghostscript 使用步骤 1 和 2 找不到字体,那么它将使用 Ordering 作为字体名称替换字体。至少这应该得到正确的字形。
我不想在这里复制 cidfmap 文档,因为我们偶尔会更新它,但可以通过以下网址在线访问它: http ://www.artifex.com/gs-current-release/Use.htm#CIDFontSubstitution
Ghostscript 文档的该部分提供了示例。