次の方法で共有


ATTRIBUTE_INFO_4構造体 (winsplp.h)

ATTRIBUTE_INFO_4構造体は、プリンター インターフェイス DLL の DrvQueryJobAttributes 関数のパラメーターとして使用されます。 すべてのメンバー値は関数指定です。 この構造は ATTRIBUTE_INFO_3に似ていますが、N-up、両面印刷、小冊子の印刷、およびスケーリングを制御するための追加メンバーが含まれています。

構文

typedef struct _ATTRIBUTE_INFO_4 {
  DWORD dwJobNumberOfPagesPerSide;
  DWORD dwDrvNumberOfPagesPerSide;
  DWORD dwNupBorderFlags;
  DWORD dwJobPageOrderFlags;
  DWORD dwDrvPageOrderFlags;
  DWORD dwJobNumberOfCopies;
  DWORD dwDrvNumberOfCopies;
  DWORD dwColorOptimization;
  short dmPrintQuality;
  short dmYResolution;
  DWORD dwDuplexFlags;
  DWORD dwNupDirection;
  DWORD dwBookletFlags;
  DWORD dwScalingPercentX;
  DWORD dwScalingPercentY;
} ATTRIBUTE_INFO_4, *PATTRIBUTE_INFO_4;

メンバーズ

dwJobNumberOfPagesPerSide

ユーザーの要求に応じて、物理ページの一方の側に配置するドキュメント ページの数。 使用できる値は、1、2、4、6、9、または 16 です。

dwDrvNumberOfPagesPerSide

プリンターとドライバーが物理ページの片側に配置できるドキュメント ページの数。 この値は 1 であるか、dwJobNumberOfPagesPerSide に指定する値である必要があります。

dwNupBorderFlags

次のいずれかのビット フラグ値。

定義
BORDER_PRINT 印刷プロセッサは、ページの周囲に罫線を描画する必要があります。
NO_BORDER_PRINT 印刷プロセッサは、ページの周囲に罫線を描画しないでください。

dwJobPageOrderFlags

次のいずれかのビット フラグ値。

定義
BOOKLET_PRINT ページは小冊子形式で印刷し、物理ページの一方に 2 つのドキュメント ページを印刷する必要があります。 横モードでは、2 つのドキュメント ページが用紙に並べて印刷されます。 縦モードでは、2 つのドキュメント ページが上下に印刷されます。
NORMAL_PRINT ページは通常の順序 (1 ページ、2 ページなど) で印刷する必要があります。
REVERSE_PRINT ページは、最後のページ、次から最後のページなどの逆の順序で印刷する必要があります。

dwDrvPageOrderFlags

プリンターとドライバーでサポートされているページ順序オプションを示すビット フラグ。 dwJobPageOrderFlags と同じフラグ使用します。

dwJobNumberOfCopies

ユーザーが要求した印刷ジョブのコピー数。

dwDrvNumberOfCopies

照合やホチキス止めなどのジョブ属性を考慮して、プリンターとドライバーが一度に処理できるコピーの最大数。

dwColorOptimization

次のいずれかのビット フラグ値。

定義
COLOR_OPTIMIZATION 印刷プロセッサでは、モノクロの色の最適化を使用する必要があります。
NO_COLOR_OPTIMIZATION 印刷プロセッサでは、モノクロの色の最適化を使用しないでください。

dmPrintQuality

COLOR_OPTIMIZATION フラグが dwColorOptimization で設定されている場合、印刷ジョブの DEVMODEW 構造体の dmPrintQuality メンバー使用する値。

dmYResolution

COLOR_OPTIMIZATION フラグが dwColorOptimization 設定されている場合、印刷ジョブの DEVMODEW 構造体の dmYResolution メンバーの代わりに使用される値。

dwDuplexFlags

二重印刷で使用される次のいずれかのビット フラグ値。

定義
DONT_SEND_EXTRA_PAGES_FOR_DUPLEX 両面印刷時に、印刷プロセッサは余分な空白ページを送信しないでください。 たとえば、両面印刷用に 3 ページのジョブを送信する場合、一部のプリンターは 4 ページを受け取る必要があります。 このフラグを設定してこのジョブを印刷する場合、印刷プロセッサーは印刷ジョブの 3 ページのみを送信し、余分な空白ページは送信しません。
REVERSE_PAGES_FOR_REVERSE_DUPLEX 印刷プロセッサは、逆二重モードで印刷する場合、ページ ペアの順序を逆にする必要があります。 たとえば、このフラグが設定されている場合、印刷プロセッサは、8、7、6、5、4、3、2、1 ではなく、7、8、5、6、6、2、2 の順にページを印刷する必要があります。

ドライバーにこれらのオプションが必要ない場合は、0 に設定します。

dwNupDirection

N アップ印刷で使用される次のいずれかのビット フラグ値。

定義
RIGHT_THEN_DOWN 印刷プロセッサは、ページイメージを左から右に順番に提供し、最後に印刷されたページを下に配置する必要があります。 また、N アップ印刷が必要ない場合は、この値に設定します。
DOWN_THEN_RIGHT 印刷プロセッサは、ページイメージを上から下に順番に提供し、最後の印刷ページで左から右に提供する必要があります。
LEFT_THEN_DOWN 印刷プロセッサは、ページイメージを右から左に順番に提供し、最後に印刷されたページを下に配置する必要があります。
DOWN_THEN_LEFT 印刷プロセッサは、ページイメージを上から下に順番に提供し、次に最終的な印刷ページで右から左に提供する必要があります。

このフラグは、dwJobNumberOfPagesPerSide または dwDrvNumberOfPagesPerSide が N アップ印刷がアクティブであることを示す場合にのみ考慮されます。 詳細については、dwJobNumberOfPagesPerSide と dwDrvNumberOfPagesPerSide の説明を参照してください。

dwBookletFlags

dwJobPageOrderFlags BOOKLET_PRINTに設定されている場合は、次のいずれかの値を指定します。

定義
BOOKLET_EDGE_LEFT 印刷プロセッサは、ページを左から右の小冊子レイアウトで印刷する必要があります。このレイアウトでは、最終的な折りたたまれた小冊子の境界端がページ 1 の左端にあります。
BOOKLET_EDGE_RIGHT 印刷プロセッサは、ページを右から左の小冊子レイアウトで印刷する必要があります。このレイアウトでは、最終的な折りたたまれた小冊子の境界端がページ 1 の右端にあります。

dwJobPageOrderFlags が BOOKLET_PRINT に設定されていない場合、dwBookletFlags は 0 に設定されます。

このフラグは、dwJobPageOrderFlags メンバーが BOOKLET_PRINT に設定されている場合にのみ考慮されます。

dwScalingPercentX

通常の用紙サイズに対する水平方向 (x) 方向の拡大縮小率。 1 ~ 1000 の範囲である必要があります。 スケーリングが実行されない場合は、100 に設定します。

予測可能な印刷結果を確保するには、dwScalingPercentX dwScalingPercentY を同じ値に する必要があります。

dwScalingPercentY

通常の用紙サイズに対する垂直方向 (y) 方向の拡大縮小率。 1 ~ 1000 の範囲である必要があります。 スケーリングが実行されない場合は、100 に設定します。

予測可能な印刷結果を確保するには、dwScalingPercentX dwScalingPercentY を同じ値に する必要があります。

備考

印刷ジョブの DEVMODEW 構造体の dmPrintQuality メンバーがDMRES_HIGHなどの負の値である場合、モノクロの色の最適化が有効になっている場合は、色とモノクロを切り替えると、異なる解像度が使用される可能性があります。 これは、カラー レンダリングとモノクロ レンダリングに対して、DMRES_HIGHが異なる DPI 値に割り当てられる可能性があるためです。 (Unidrv でサポートされているデバイスの場合、この割り当てはプリンターの GPD ファイルで行われます)。印刷ジョブ全体で一貫した解像度を確保するために、ドライバーは dmPrintQuality 正の値を指定し、dmYResolution 値 (特定の DPI 解像度を表します) を して、同等の DEVMODEWオーバーライドできます。

EMF 印刷プロセッサは、dwColorOptimization 指定されたフラグを使用して、モノクロ色の最適化を実行するように GDI に要求するかどうかを決定します。 モノクロの色の最適化が有効になっている場合は、必要に応じてモノクロとカラー レンダリングの間で印刷ジョブを切り替えることができます。

色の透かしを生成するために Unidrv レンダリング プラグインを作成する場合は、dwColorOptimization メンバーがCOLOR_OPTIMIZATIONに設定されている場合、黒と白のドキュメントに印刷されるときに、色の透かしが白黒で印刷されることに注意してください。 色と白黒のドキュメントで色の透かしが正しく印刷されるようにするには、色の最適化を無効にします。 色の最適化は、Unidrv *ChangeColorModeOnDoc によって制御することもできます。 color 属性 (Color Attributesを参照) と、GdiEndPageEMF 関数を参照してください。

ATTRIBUTE_INFO_4 メンバーの既定値の一覧については、「GetJobAttributesEx 参照してください。

この構造は、Windows Vista で使用できます。

必要条件

要件 価値
ヘッダー winsplp.h (Winddiui.h、Winsplp.h を含む)

関連項目

ATTRIBUTE_INFO_2

ATTRIBUTE_INFO_3

DrvQueryJobAttributes

GdiEndPageEMF

GetJobAttributesEx する