【发布时间】:2022-07-09 08:54:09
【问题描述】:
我需要为字体应用黑色轮廓,但保持白色填充颜色。扩展描边或添加轮廓样式会应用轮廓,但是当我生成 .ttf 或 .otf 时,填充颜色会丢失。我以前从未使用过 fontforge,文档中的很多术语都被我弄丢了。任何指导表示赞赏。使用 Windows 10。
【问题讨论】:
标签: fonts truetype opentype fontforge
我需要为字体应用黑色轮廓,但保持白色填充颜色。扩展描边或添加轮廓样式会应用轮廓,但是当我生成 .ttf 或 .otf 时,填充颜色会丢失。我以前从未使用过 fontforge,文档中的很多术语都被我弄丢了。任何指导表示赞赏。使用 Windows 10。
【问题讨论】:
标签: fonts truetype opentype fontforge
在 OpenType 字体中,字形被描述为由 TrueType 或 CFF(PostScript 类型 1)光栅化器填充的形状轮廓。光栅化器正在确定哪些区域在轮廓内部,并因此确定哪些像素获得“墨水”。但是光栅化器不能确定颜色。由应用程序决定字形形状内部使用什么颜色(“前景”颜色)以及背景使用什么颜色。
许多图形应用程序允许您设置与描边颜色分开的填充颜色。但是这样做的方法是使用填充颜色作为前景色来绘制文本(因为通常会绘制文本),然后分别从字体中获取轮廓数据,然后将其绘制为顶部的路径“充满”。实际上,该应用在两种不同的模式下使用了两次轮廓。
您可以创建一种显示为带有填充的轮廓描边的字体,其中前景色应用于轮廓,而背景颜色应用于填充。例如,
这些字体通常被称为“轮廓”字体。 (不要将“轮廓”的技术意义混淆为字体字形数据中的路径。)这是另一个相同字体的示例,但前景色设置为红色,背景设置为浅绿色:
这样做的方式是字形轮廓包括笔划的外轮廓和内轮廓。
光栅器将只为组合路径的内部区域打开像素。
到目前为止,这是描述典型的单色字体。如果你想控制轮廓描边的颜色和字体内的填充,那么你可以创建一个 colour 字体。与典型的单色字体不同,其中字体不指定任何颜色信息并且应用程序确定前景色和背景色,彩色字体具有多色字形,字体开发人员在其中指定特定颜色。有关彩色字体的概述,请参阅 here(有点过时并且没有提及最近的增强功能,但仍然是一个很好的介绍)。
OpenType 规范支持不同格式的彩色字体:
我不知道 Fontforge 是否支持创建彩色字体,但其他字体开发应用程序如 FontCreator、FontLab 和 Glyphs 确实支持彩色字体。
【讨论】: