本节包含关于字体技术如何演变、其中一些技术的特性以及选择最广泛使用的技术的市场动态的(现在看来)无用和有用的信息。
如今,您可能再也找不到 Type 1、Type 3 和 Type 42 字体。
最重要的是:今天,事实上的字体标准是 True Type,Linux 通过 FreeType 库对其提供强大的支持,有时您可能需要一些 位图字体 用于屏幕显示,但绝不用于打印。
位图是点的矩阵。位图字体正是以这种方式表示的——作为点的矩阵。因此,它们是设备相关的——它们只在特定的分辨率下有用。 75 DPI 屏幕位图字体在您的 1200 DPI 打印机上仍然是 75 DPI。
位图字体有两种类型——位图打印机字体,例如pkdvips 生成的字体,以及位图屏幕字体,由 X 和控制台使用。位图屏幕字体通常具有bdf或pcf扩展名。位图屏幕字体对于终端窗口、控制台和文本编辑器最有用,在这些地方,缺乏可伸缩性以及它们不可打印不是问题。
TrueType 字体由 Apple 开发。他们将该格式提供给 Microsoft,并成功挑战了 Adobe 对字体市场的控制。 True type 字体将度量和形状信息存储在一个文件中(通常是一个带有ttf扩展名的文件)。最近,已经开发了字体服务器,使 TrueType 可用于 X。并且 PostScript 和 ghostscript 已经支持 TrueType 字体一段时间了。因此,TrueType 字体在 Linux 上变得越来越流行。
Type 1 字体标准由 Adobe 设计,Type 1 字体受到 Adobe 的 PostScript 标准的支持。因此,它们在 Linux 下也得到了很好的支持。 X 和 ghostscript 都支持它们。 传统上,Postscript 字体一直是 UNIX 上涉及打印的任何内容的首选字体。
通常,UNIX Type 1 字体以afm(adobe 字体度量)文件和轮廓文件的形式分发,轮廓文件通常是pfb(打印机字体二进制)或pfa(打印机字体 ascii)文件。轮廓文件包含所有字形,而度量文件包含度量。
用于其他平台的 Type 1 字体可能以不同的格式分发。例如,用于 Windows 的 PostScript 字体通常使用不同的格式(pfm)作为度量文件。
Type 42 字体实际上只是 TrueType 字体,带有使其能够被 PostScript 解释器渲染的标头。大多数应用程序(如 ghostscript 和 SAMBA)都透明地处理这些字体。但是,如果您有 PostScript 打印机,则可能有必要显式创建 Type 42 字体文件。
尽管 Type 1 和 TrueType 字体的支持者之间存在历史性的争执,但两者有很多共同之处。两者都是可伸缩的轮廓字体。 Type 1 字体使用三次曲线而不是二次曲线来表示字形。从理论上讲,这至少是一个轻微的优势,因为它们包含 TrueType 字体可用的所有曲线。但在实践中,这几乎没有什么区别。
TrueType 字体具有明显的优势,即它们对微调的支持更好(Type 1 字体确实具有微调功能,但不如 TrueType 字体的广泛)。但是,这只是在低分辨率设备(如屏幕)上才是一个问题(改进的微调在 600dpi 打印机上,即使在小磅值下,也无法区分差异)。使这种明显优势有些值得怀疑的另一点是,经过良好微调的 TrueType 字体很少见。这是因为支持微调功能的软件包超出了大多数小型设计师的预算。只有少数主要铸字厂(如 Monotype)提供经过良好微调的字体。
总而言之,TrueType 和 Type 1 字体之间的主要区别在于可用性和应用程序支持。 Windows 上 TrueType 字体的广泛可用性导致网页在设计时假设某些 TrueType 字体是可用的。此外,许多用户拥有大量的 TrueType 字体,因为它们随用户的 Windows 应用程序一起提供。但是,在 Linux 上,大多数应用程序都支持 Type 1 字体,但对 TrueType 的支持程度不如前者。此外,大多数主要的字体铸字厂仍然以 Type 1 格式发布他们的大部分字体。例如,Adobe 发布的 TrueType 字体非常少。我对用户的建议是使用任何适用于您的应用程序的字体,并尽量避免从一种格式转换为另一种格式(因为格式转换并非没有损失)。