IPrintOemUni::SendFontCmd 方法(prcomoem.h)
IPrintOemUni::SendFontCmd
方法使呈现插件能够修改打印机的字体选择命令,然后将其发送到打印机。
语法
HRESULT SendFontCmd(
PDEVOBJ pdevobj,
PUNIFONTOBJ pUFObj,
PFINVOCATION pFInv
);
参数
pdevobj
调用方提供的指向 DEVOBJ 结构的指针。
pUFObj
调用方提供的指向 UNIFONTOBJ 结构的 指针。
pFInv
调用方提供的指向 FINVOCATION 结构的指针。
返回值
该方法必须返回以下值之一。
返回代码 | 描述 |
---|---|
S_OK | 作成功。 |
E_FAIL | 作失败。 |
E_NOTIMPL | 未实现该方法。 |
言论
IPrintOemUni::SendFontCmd
方法用于在无法识别 Unidrv 支持的 PCL、CAPSL 或 PPDS 格式的字体命令的打印机上选择设备字体。 其用途是允许呈现插件修改字体选择命令,该命令在字体的 .ufm(Unidrv 字体指标)文件中指定。 (若要查看命令的存储方式,请参阅 .ufm 文件的 UNIDRVINFO 结构的说明。如果在发送到打印机之前需要修改命令,则应实现 IPrintOemUni::SendFontCmd
方法。
该方法接收 pFInv指向的 FINVOCATION 结构中的命令字符串。 通常,字符串包含必须为其提供值的变量。 例如,以下字体选择命令要求 #FontHeight#FontWidth 替换为数值:
\x1B(9U\x1B(s4148t0b0s#FontHeight1P\x1B)6J\x1B)s4148t0b0s#FontWidth1P
可以通过调用 UNIFONTOBJ_GetInfo 读取 Unidrv 的标准变量来获取字体高度和宽度的当前值。
每当调用 IPrintOemUni::SendFontCmd
方法时,它都必须通过调用 IPrintOemDriverUni::D rvWriteSpoolBuf将命令字符串发送到打印机。
IPrintOemUni::SendFontCmd
方法是可选的。 如果呈现插件实现此方法,则插件的 IPrintOemUni::GetImplementedMethod 方法在收到“SendFontCmd”作为输入时必须返回S_OK。
有关详细信息,请参阅 自定义字体管理。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | prcomoem.h (include Prcomoem.h) |
另请参阅
IPrintOemDriverUni::D rvWriteSpoolBuf