次の方法で共有


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 Font Metrics) ファイルで指定されているフォント選択コマンドを変更できるようにすることです。 (コマンドの格納方法については、.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を返す必要があります。

詳細については、「 カスタマイズされたフォント管理」を参照してください。

要件

要件
対象プラットフォーム デスクトップ
Header prcomoem.h (Prcomoem.h を含む)

こちらもご覧ください

DEVOBJ

FINVOCATION

IPrintOemDriverUni::D rvWriteSpoolBuf

IPrintOemUni

IPrintOemUni::GetImplementedMethod

UNIFONTOBJ

UNIFONTOBJ_GetInfo