uniDRVINFO 结构 (prntfont.h)
UNIDRVINFO 结构用于指定 Unidrv 字体指标文件中 特定于打印机的信息, (.ufm 文件) 。
语法
typedef struct _UNIDRVINFO {
DWORD dwSize;
DWORD flGenFlags;
WORD wType;
WORD fCaps;
WORD wXRes;
WORD wYRes;
short sYAdjust;
short sYMoved;
WORD wPrivateData;
short sShift;
INVOC SelectFont;
INVOC UnSelectFont;
WORD wReserved[4];
} UNIDRVINFO, *PUNIDRVINFO;
成员
dwSize
指定 UNIDRVINFO 结构的大小(以字节为单位)。
flGenFlags
包含描述字体特征的一个或多个位标志。 定义了以下标志:
标志 | 定义 |
---|---|
UFM_CART | 字体包含在墨盒中。 |
UFM_SCALABLE | 字体可缩放。 |
UFM_SOFT | 字体是软字体,需要下载。 |
wType
包含描述字体类型的整数常量。 定义了以下常量:
一直 | 定义 |
---|---|
DF_TYPE_CAPSL | 佳能 CAPSL 可扩展字体 |
DF_TYPE_HPINTELLIFONT | HP Intellifont 字体 |
DF_TYPE_OEM1 | OEM 提供的可缩放字体 |
DF_TYPE_OEM2 | OEM 提供的可缩放字体 |
DF_TYPE_PST1 | Lexmark PPDS 可扩展字体 |
DF_TYPE_TRUETYPE | LJ4 打印机的 HP PCLETTO 字体 |
fCaps
包含一个或多个位标志,用于标识设备字体提供的功能限制。 定义了以下标志:
标志 | 定义 |
---|---|
DF_BKSP_OK | 如果设置,单个退格字符可以将光标移动到过度打击区域的开头。 如果未设置,则必须发送 x 移动游标命令。 (仅在 MAPTABLE 中为字符的 TRANSDATA 结构指定MTYPE_PAIRED时才使用。否则忽略.) |
DF_NO_BOLD | 不能使用下划线模拟将设备字体加粗。 |
DF_NO_DOUBLE_UNDERLINE | 不能使用双下划线模拟对设备字体加双下划线。 |
DF_NO_STRIKETHRU | 无法使用删除线模拟来敲击设备字体。 |
DF_NOITALIC | 不能使用斜体模拟将设备字体斜体化。 |
DF_NOUNDER | 无法使用下划线模拟为设备字体添加下划线。 |
DF_XM_CR | Unidrv 必须在每行文本后发送回车命令。 |
wXRes
指定字体的 x 分辨率。
wYRes
指定字体的 y 分辨率。
sYAdjust
指定在点阵打印机上输出双高字符之前所需的垂直调整量。
sYMoved
指定在点阵打印机上打印双高字符时产生的垂直光标移动量。
wPrivateData
可用于打印机特定的信息,例如 HP DeskJet 排列。
sShift
指定每个字符必须移动的像素数。 用于 Microsoft Z1a 墨盒。
SelectFont
包含打印机的字体选择命令的 INVOC 结构。
UnSelectFont
是包含打印机字体取消选择命令的 INVOC 结构。
wReserved[4]
未使用。
注解
.ufm (Unidrv Font Metrics) 文件的 UNIDRVINFO 结构可通过文件的 UNIFM_HDR 结构中的指针访问。
要求
要求 | 值 |
---|---|
Header | prntfont.h (包括 Prntfont.h) |