IPrintOemUni::SendFontCmd method (prcomoem.h)
The IPrintOemUni::SendFontCmd
method enables a rendering plug-in to modify a printer's font selection command and then send it to the printer.
Syntax
HRESULT SendFontCmd(
PDEVOBJ pdevobj,
PUNIFONTOBJ pUFObj,
PFINVOCATION pFInv
);
Parameters
pdevobj
Caller-supplied pointer to a DEVOBJ structure.
pUFObj
Caller-supplied pointer to a UNIFONTOBJ structure.
pFInv
Caller-supplied pointer to an FINVOCATION structure.
Return value
The method must return one of the following values.
Return code | Description |
---|---|
S_OK | The operation succeeded. |
E_FAIL | The operation failed. |
E_NOTIMPL | The method is not implemented. |
Remarks
The IPrintOemUni::SendFontCmd
method is used for selecting device fonts on printers that do not recognize the PCL, CAPSL, or PPDS-formatted font commands supported by Unidrv. Its purpose is to allow a rendering plug-in to modify the font selection command that is specified in the font's .ufm (Unidrv Font Metrics) file. (To see how the command is stored, refer to the description of .ufm file's UNIDRVINFO structure.) If the command needs to be modified before being sent to the printer, you should implement the IPrintOemUni::SendFontCmd
method.
The method receives the command string in the FINVOCATION structure pointed to by pFInv. Typically, the string contains variables for which values must be supplied. For example, the following font selection command requires that #FontHeight and #FontWidth be replaced with numeric values:
\x1B(9U\x1B(s4148t0b0s#FontHeight1P\x1B)6J\x1B)s4148t0b0s#FontWidth1P
Current values for the font height and width can be obtained by calling UNIFONTOBJ_GetInfo to read Unidrv's standard variables.
Whenever the IPrintOemUni::SendFontCmd
method called, it must send the command string to the printer by calling IPrintOemDriverUni::DrvWriteSpoolBuf.
The IPrintOemUni::SendFontCmd
method is optional. If a rendering plug-in implements this method, the plug-in's IPrintOemUni::GetImplementedMethod method must return S_OK when it receives "SendFontCmd" as input.
For additional information see Customized Font Management.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | prcomoem.h (include Prcomoem.h) |
See also
IPrintOemDriverUni::DrvWriteSpoolBuf