次の方法で共有


IPrintOemUni::D ownloadCharGlyph メソッド (prcomoem.h)

IPrintOemUni::DownloadCharGlyph メソッドを使用すると、Unidrv のレンダリング プラグインは、指定したソフト フォントの文字グリフをプリンターに送信できます。

構文

HRESULT DownloadCharGlyph(
        PDEVOBJ     pdevobj,
        PUNIFONTOBJ pUFObj,
        HGLYPH      hGlyph,
        PDWORD      pdwWidth,
  [out] OUT DWORD   *pdwResult
);

パラメーター

pdevobj

DEVOBJ 構造体への呼び出し元指定ポインター。

pUFObj

UNIFONTOBJ 構造体への呼び出し元指定ポインター。

hGlyph

呼び出し元が指定したグリフ ハンドル。

pdwWidth

メソッドが指定した文字の幅を受け取る呼び出し元が指定したポインター。

[out] pdwResult

文字グリフを格納するために必要なプリンター メモリの量をバイト単位で表すメソッド指定の値を受け取ります。 操作が失敗した場合、戻り値は 0 である必要があります。

戻り値

このメソッドは、次のいずれかの値を返す必要があります。

リターン コード 形容
S_OK
操作は成功しました。
E_FAIL
操作に失敗しました
E_NOTIMPL
メソッドは実装されていません。

備考

IPrintOemUni::DownloadCharGlyph メソッドは、PCL コマンドを受け入れられないプリンターでソフト フォント サポートするために使用されます。 その目的は、レンダリング プラグインが文字グリフをプリンターに送信できるようにすることです。

レンダリング プラグインが IPrintOemUni::DownloadCharGlyph メソッドを実装する場合、Unidrv は、プリンターの GPD ファイルに含まれている CmdSetCharCode コマンド エントリで指定されたコマンド文字列を送信した直後にメソッドを呼び出します。 (GPD ファイルは、Microsoft ユニバーサル プリンター ドライバーで説明されています)。このメソッドでは、次の操作を行う必要があります。

  • UNIFONTOBJ_GetInfo 関数を呼び出して、hGlyph で指定されたグリフ イメージ取得します。
  • IPrintOemDriverUni::D rvWriteSpoolBuf 呼び出して、グリフをプリンターに送信します。
  • UNIFONTOBJ_GetInfo 関数をもう一度呼び出してグリフの幅を取得し、pdwWidth 指すアドレスに幅を格納します。
  • pdwResult で指定された場所にグリフを配置することによって、グリフを格納するために必要なプリンター メモリの量返します。
IPrintOemUni::DownloadCharGlyph メソッドは省略可能です。 レンダリング プラグインがこのメソッドを実装する場合、プラグインの IPrintOemUni::GetImplementedMethod メソッドは、入力として "DownloadCharGlyph" を受け取ったときにS_OKを返す必要があります。

IPrintOemUni::DownloadCharGlyph メソッドを実装する場合は、IPrintOemUni::D ownloadFontHeader メソッドも実装する必要があります。

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

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー prcomoem.h (Prcomoem.h を含む)