ATTRIBUTE_INFO_4-Struktur (winddiui.h)

Die ATTRIBUTE_INFO_4-Struktur wird als Parameter für die DrvQueryJobAttributes-Funktion einer Druckerschnittstellen-DLL verwendet. Alle Memberwerte werden von Funktionen bereitgestellt. Diese Struktur ähnelt ATTRIBUTE_INFO_3, enthält aber zusätzliche Member, um den Druck und die Skalierung von N-Up, Duplex und Broschüren zu steuern.

Syntax

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;

Member

dwJobNumberOfPagesPerSide

Anzahl der Dokumentseiten, die auf einer Seite einer physischen Seite platziert werden sollen, wie vom Benutzer angefordert. Zulässige Werte sind 1, 2, 4, 6, 9 oder 16.

dwDrvNumberOfPagesPerSide

Anzahl der Dokumentseiten, die der Drucker und der Treiber auf einer Seite einer physischen Seite platzieren können. Dieser Wert muss 1 oder der für dwJobNumberOfPagesPerSide angegebene Wert sein.

dwNupBorderFlags

Einer der folgenden Bitflagswerte:

Flag Definition
BORDER_PRINT Der Druckprozessor sollte einen Rahmen um die Seite zeichnen.
NO_BORDER_PRINT Der Druckprozessor sollte keinen Rahmen um die Seite ziehen.

dwJobPageOrderFlags

Einer der folgenden Bitflagswerte:

Flag Definition
BOOKLET_PRINT Seiten sollten in Broschürenform gedruckt werden, wobei zwei Dokumentseiten auf einer Seite einer physischen Seite gedruckt werden. Im Querformat werden die beiden Dokumentseiten nebeneinander auf dem Papier gedruckt. Im Hochformatmodus werden die beiden Dokumentseiten oben und unten gedruckt.
NORMAL_PRINT Seiten sollten in normaler Reihenfolge gedruckt werden: Seite 1, Seite 2 usw.
REVERSE_PRINT Seiten sollten in umgekehrter Reihenfolge gedruckt werden: letzte Seite, vorletzte Seite usw.

dwDrvPageOrderFlags

Bitflags, die angeben, welche Optionen für die Seitenreihenfolge vom Drucker und Treiber unterstützt werden. Verwendet die gleichen Flags wie dwJobPageOrderFlags.

dwJobNumberOfCopies

Anzahl der Kopien des Druckauftrags, wie vom Benutzer angefordert.

dwDrvNumberOfCopies

Maximale Anzahl von Kopien, die der Drucker und der Treiber gleichzeitig verarbeiten können, unter Berücksichtigung von Auftragsattributen wie sortieren und Heften.

dwColorOptimization

Einer der folgenden Bitflagswerte:

Flag Definition
COLOR_OPTIMIZATION Der Druckprozessor sollte eine monochrome Farboptimierung verwenden.
NO_COLOR_OPTIMIZATION Der Druckprozessor sollte keine monochrome Farboptimierung verwenden.

dmPrintQuality

Der Wert, der anstelle des dmPrintQuality-Elements der DEVMODEW-Struktur des Druckauftrags verwendet werden soll, wenn das flag COLOR_OPTIMIZATION in dwColorOptimization festgelegt ist.

dmYResolution

Wert, der anstelle des dmYResolution-Elements der DEVMODEW-Struktur des Druckauftrags verwendet werden soll, wenn das flag COLOR_OPTIMIZATION in dwColorOptimization festgelegt ist.

dwDuplexFlags

Einer der folgenden Bitflagswerte, die beim Duplexdruck verwendet werden:

Flag Definition
DONT_SEND_EXTRA_PAGES_FOR_DUPLEX Der Druckprozessor sollte beim Duplexdruck keine zusätzlichen leeren Seiten senden. Wenn Sie beispielsweise einen Drei-Seiten-Auftrag für den Duplexdruck senden, erwarten einige Drucker, dass sie vier Seiten erhalten. Wenn Sie diesen Auftrag unter Microsoft Windows XP oder Windows Server 2003 drucken, sendet der Druckprozessor standardmäßig vier Seiten an den Drucker (die vierte Seite ist eine leere Seite). Wenn Sie diesen Auftrag unter Windows Vista mit diesem Flag drucken, sendet der Druckprozessor nur die drei Seiten des Druckauftrags und nicht die zusätzliche leere Seite.
REVERSE_PAGES_FOR_REVERSE_DUPLEX Der Druckprozessor sollte beim Drucken im Reverseduplexmodus die Reihenfolge der Seitenpaare umkehren. Wenn dieses Flag beispielsweise festgelegt ist, sollte der Druckprozessor Seiten in der Reihenfolge 7, 8, 5, 6, 3, 4, 1, 2 statt 8, 7, 6, 5, 4, 3, 2, 1 drucken.

Legen Sie auf 0 fest, wenn Ihr Treiber keine dieser Optionen erfordert.

dwNupDirection

Einer der folgenden Bitflagswerte, die beim N-Up-Druck verwendet werden:

Flag Definition
RIGHT_THEN_DOWN Der Druckprozessor sollte Seitenbilder nacheinander von links nach rechts und dann auf der letzten gedruckten Seite bereitstellen. Wird auch auf diesen Wert festgelegt, wenn kein N-up-Druck erforderlich ist.
DOWN_THEN_RIGHT Der Druckprozessor sollte Seitenbilder nacheinander von oben nach unten und dann von links nach rechts auf der letzten gedruckten Seite bereitstellen.
LEFT_THEN_DOWN Der Druckprozessor sollte Seitenbilder nacheinander von rechts nach links und dann auf der letzten gedruckten Seite bereitstellen.
DOWN_THEN_LEFT Der Druckprozessor sollte Seitenbilder nacheinander von oben nach unten und dann von rechts nach links auf der letzten gedruckten Seite bereitstellen.

Dieses Flag wird nur berücksichtigt, wenn dwJobNumberOfPagesPerSide und/oder dwDrvNumberOfPagesPerSide angeben, dass N-up-Druck aktiv ist. Weitere Informationen finden Sie in den obigen Beschreibungen für dwJobNumberOfPagesPerSide und dwDrvNumberOfPagesPerSide.

dwBookletFlags

Wenn dwJobPageOrderFlags auf BOOKLET_PRINT festgelegt ist, einer der folgenden Werte.

Flag Definition
BOOKLET_EDGE_LEFT Der Druckprozessor sollte Seiten in einem Layout von links nach rechts drucken, wobei sich der gebundene Rand der endgültigen gefalteten Broschüre am linken Rand der ersten Seite befindet.
BOOKLET_EDGE_RIGHT Der Druckprozessor sollte Seiten in einem Layout von rechts nach links drucken, wobei sich der gebundene Rand der endgültigen gefalteten Broschüre am rechten Rand der ersten Seite befindet.

Wenn dwJobPageOrderFlags nicht auf BOOKLET_PRINT festgelegt ist, wird dwBookletFlags auf 0 festgelegt.

Dieses Flag wird nur berücksichtigt, wenn das dwJobPageOrderFlags-Element auf BOOKLET_PRINT festgelegt ist.

dwScalingPercentX

Skalierungsprozentsatz in horizontaler (x) Richtung im Verhältnis zum normalen Papierformat. Muss im Bereich von 1 bis 1000 liegen. Legen Sie auf 100 fest, wenn die Skalierung nicht durchgeführt wird.

Um vorhersagbare Druckergebnisse sicherzustellen, müssen dwScalingPercentX und dwScalingPercentY den gleichen Wert aufweisen.

dwScalingPercentY

Skalierungsprozentsatz in vertikaler Richtung (y) im Verhältnis zum normalen Papierformat. Muss im Bereich von 1 bis 1000 liegen. Legen Sie auf 100 fest, wenn die Skalierung nicht durchgeführt wird.

Um vorhersagbare Druckergebnisse sicherzustellen, müssen dwScalingPercentX und dwScalingPercentY den gleichen Wert aufweisen.

Hinweise

Wenn der dmPrintQuality-Member der DEVMODEW-Struktur eines Druckauftrags ein negativer Wert ist, z. B. DMRES_HIGH, und wenn die Monochromfarboptimierung aktiviert ist, kann der Wechsel zwischen Farbe und Monochrom dazu führen, dass unterschiedliche Auflösungen verwendet werden. Dies liegt daran, dass DMRES_HIGH möglicherweise verschiedenen DPI-Werten für farb- und monochromes Rendering zugewiesen werden. (Bei Von Unidrv unterstützten Geräten erfolgt diese Zuweisung in der GPD-Datei des Druckers.) Um eine konsistente Auflösung im gesamten Druckauftrag sicherzustellen, kann der Treiber positive Werte für dmPrintQuality und dmYResolution angeben (die eine bestimmte DPI-Auflösung darstellen), um die entsprechenden DEVMODEW-Werte zu überschreiben.

Der EMF-Druckprozessor verwendet das für dwColorOptimization angegebene Flag, um zu bestimmen, ob GDI zur Monochromfarboptimierung angefordert werden soll. Wenn die Monochromfarboptimierung aktiviert ist, kann der Druckauftrag je nach Bedarf zwischen monochromem Und Farbrendering gewechselt werden.

Wenn Sie ein Unidrv-Rendering-Plug-In zum Generieren von Farbwasserzeichen erstellen, beachten Sie, dass farbliche Wasserzeichen schwarzweiß gedruckt werden, wenn das dwColorOptimization-Element auf COLOR_OPTIMIZATION festgelegt ist. Deaktivieren Sie die Farboptimierung, um sicherzustellen, dass Farbwasserzeichen ordnungsgemäß mit Farb- und Schwarzweißdokumenten gedruckt werden. Die Farboptimierung kann auch über das Unidrv *ChangeColorModeOnDoc?- Farbattribute (siehe Farbattribute) und die GdiEndPageEMF-Funktion gesteuert werden.

Eine Liste der Standardwerte für ATTRIBUTE_INFO_4-Member finden Sie unter GetJobAttributesEx.

Anforderungen

Anforderung Wert
Header winddiui.h (einschließlich Winddiui.h, Winsplp.h)

Weitere Informationen

ATTRIBUTE_INFO_2

ATTRIBUTE_INFO_3

DrvQueryJobAttributes

GdiEndPageEMF

GetJobAttributesEx