字体替换

重要

建议使用 Microsoft 的 IPP 收件箱类驱动程序,以及 Print Support Apps (PSA) ,在 Windows 10 和 11 中自定义打印体验,以便进行打印机设备开发。

有关详细信息,请参阅 打印支持应用设计指南

对于提供硬件驻留字体或墨盒字体的打印机,可以指定字体替换表。 通过提供字体替换表,可以指定硬件驻留字体或墨盒字体,这些字体可以替换必须下载的 TrueType 字体。 当 Unidrv 收到此类 TrueType 字体的文本时,它首先检查字体替换表是否包含字体的硬件驻留替换。 如果 Unidrv 找到替换的常驻字体,并且字体指标 ((如字符集、粗细、斜体、方向等)) 兼容,则使用常驻字体。

可以使用一系列 *TTFS 条目创建默认字体替换表。 每个条目的格式为:

*TTFS: FontName { *TTFontName: “TTFontNameString” *DevFontName: “DeviceFontNameString” }

其中 FontName 是指定条目名称的符号, TTFontNameString 是标识要替换的 TrueType 字体的文本字符串, DeviceFontNameString 是标识要使用的硬件驻留字体或墨盒字体的文本字符串。 下面是一个示例表:

*TTFS: Arial
{
    *TTFontName: "Arial"
    *DevFontName "Arial"
}
*TTFS: TNR
{
    *TTFontName: "Times New Roman"
    *DevFontName: "Times New Roman"
}
*TTFS: CurrierNew 
{
    *TTFontName:  "Courier New"
    *DevFontName: "Courier New"
}

如果存在具有相同 FontName 值的重复 *TTFS 条目,则分析程序读取的最后一个条目将取代上一个条目。

指定的替换表是默认表,因为 Unidrv 允许用户修改替换。

所有 *TTFS 条目都必须位于 GPD 文件的根级别 (,即不在大括号) 内。

若要控制默认情况下是否启用字体替换,请使用 *TTFSEnabled?进入。 此条目的格式为:

*TTFSEnabled?: BooleanValue

其中 BooleanValueTRUEFALSE。 如果 BooleanValueTRUE,则 Unidrv 将启用字体替换。 如果 BooleanValueFALSE,或者不包含 *TTFSEnabled?输入 GPD 文件中,Unidrv 将禁用字体替换,直到用户启用它。

*TTFSEnable?条目可重定位,但 *TTFS 条目不可重定位。 (有关可重定位条目的信息,请参阅在 *Switch、*Case 和 *Default 语句) 内放置的内容。

默认 TrueType 字体替换

名为 ttfsub.gpd 的文件中提供了 TrueType 字体替换的默认表。 若要使用它,请在 GPD 文件的根级别 (添加以下条目,即不在大括号) 内:

*Include: "ttfsub.gpd"

此外,必须安装此文件。 有关详细信息,请参阅 打印机 INF 文件安装部分