设备字体的属性

重要

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

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

下表列出了描述打印机对设备字体支持的属性。

特性名 属性参数 注释
CharPosition UPPERLEFT 或 BASELINE。 指示打印字符之前打印头应定位到的字符边界框的区域。 可选。 如果未指定,默认值为 UPPERLEFT。
DefaultCTT 表示默认字符转换表RC_CTT资源标识符的数值。 可选。 仅适用于 TTY 打印机。 如果未指定,则没有转换表。 (提供此属性仅用于与 GPC 文件向后兼容。)
DefaultFont 表示默认字体RC_FONT或RC_UFM资源标识符的数值。 如果打印机支持设备字体,则为必需。
LookAheadRegion 数值 (整数) 值,该值表示驱动程序必须“看”多远才能确定是否应发出文本。 此值以 y 主控单位为单位,但必须转换为整数像素数。 有关详细信息,请参阅此表后面的注释。 可选。 如果未指定,则默认值为零。 仅与串行打印机一起使用, (例如 HP DeskJet) ,用于对文本和位图数据进行排序。
MaxFontUsePerPage 表示打印机每页可使用的最大字体数的数值。 可选。 如果未指定,则没有限制。
TextYOffset 表示垂直距离的数值(以 y 主控单位为单位),必须重新定位常驻字体才能与位图字体基线保持一致。 可选。 如果未指定,则默认值为 0。 (与某些点阵打印机一起使用。)

有关示例,请参阅 示例 GPD 文件

若要确定 lookahead 区域的大小,打印机驱动程序必须基于当前扫描行和 *LookAheadRegion 属性的值执行加法。 由于扫描线以像素为单位,而 *LookAheadRegion 为垂直主控单元,因此驱动程序必须将属性值转换为像素。

例如,如果 *LookAheadRegion 属性的值为 600,并且每英寸有 1200 个垂直主控单元,则查找头区域的大小为 1-5 英寸。 如果当前分辨率为 300 dpi,则半英寸对应于 150 像素 (垂直) 或 150 个扫描线。 如果打印机当前位于扫描行 100 上,则驱动程序必须查找扫描行 100 和 250 之间的文本基线。

驱动程序对每个扫描行重复此过程,尽管它只发出一次找到的文本。