次の方法で共有


IPrintOemUni3::SetBandSize メソッド (prcomoem.h)

このメソッドは IPrintOemUni3::SetBandSize 、Unidrv でサポートされているプリンターと共に使用して、印刷出力に必要なバンド サイズを指定できます。

構文

HRESULT SetBandSize(
  [in] PDEVOBJ pdevobj,
  [in] INT     iFormat,
  [in] DWORD   dwPageWidthBytes,
  [in] DWORD   dwPageHeight,
  [in] DWORD   dwMaxHeight,
  [in] PDWORD  pdwRequiredHeight
);

パラメーター

[in] pdevobj

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

[in] iFormat

必要なピクセルあたりの色情報のビット数の観点からビットマップの形式を指定する整数値。 このパラメーターには、次の値のいずれかを指定できます。

意味
BMF_1BPP
白黒
BMF_4BPP
ピクセルあたり 4 ビット
BMF_8BPP
ピクセルあたり 8 ビット
BMF_16BPP
ピクセルあたり 16 ビット
BMF_24BPP
1 ピクセルあたり 24 ビット
BMF_32BPP
ピクセルあたり 32 ビット
BMF_4RLE
ピクセルあたり 4 ビット。エンコードされた実行長
BMF_8RLE
ピクセルあたり 8 ビット。エンコードされた実行長

[in] dwPageWidthBytes

印刷領域の幅をバイト単位で指定する Unidrv 指定の値。

[in] dwPageHeight

印刷領域の高さをピクセル単位で指定する Unidrv 指定の値。

[in] dwMaxHeight

印刷領域の最大許容高さをピクセル単位で指定する Unidrv 指定の値。

[in] pdwRequiredHeight

レンダリング プラグインで必要な印刷領域の高さをピクセル単位で含む DWORD への呼び出し元指定のポインター。

戻り値

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

リターン コード 説明
S_OK
操作が成功しました。 注を参照。
E_FAIL
操作が失敗しました。 注を参照。
E_NOTIMPL
Unidrv はバンディング サイズを計算する必要があります。

注釈

このメソッドは、Windows Vista 以降で使用できます。

このメソッドは、Unidrv のバンド サイズ計算を使用するのではなく、プラグイン独自の計算を使用してバンド サイズを指定するためにレンダリング プラグインによって使用されます。

dwPageHeight 値を *pdwRequiredHeight に設定することで、Unidrv によるバンディング操作を無効にできますが、レンダリング プラグインが要求する高さの値のパフォーマンス効果を考慮する必要があります。 レンダリングの場合、Unidrv には少なくとも dwPageWidthBytes に *pdwRequiredHeight を乗算して計算されるメモリ量が必要です。 レンダリング プラグインが IPrintOemUni::D riverDMS メソッドをサポートしていて、そのメソッドが "S_OK" を返す場合、 IPrintOemUni3::SetBandSize は呼び出されません。

このメソッドが定義されていて、プリンターの汎用プリンター記述 (GPD) ファイルが、事前分析が無効 (GPD ファイルに "*PreAnalysisOptions: 0" が含まれている) ことを示している場合、Unidrv はこのメソッドを呼び出してバンド サイズを計算します。 PreAnalysisOptions 属性の詳細については、「Preanalysis Infrastructure」を参照してください。

レンダリング プラグインが IPrintOemUni::D riverDMS をサポートし、そのメソッドがS_OKを返す場合、 IPrintOemUni3::SetBandSize は呼び出されません。

要件

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