Freigeben über


Identifizieren der Farbfunktion eines Druckers

Wichtig

Die moderne Druckplattform ist die bevorzugte Methode von Windows für die Kommunikation mit Druckern. Wir empfehlen die Verwendung des Microsoft IPP-Treibers für die Posteingangsklasse zusammen mit Print Support Apps (PSA), um das Druckverhalten in Windows 10 und 11 für die Entwicklung von Druckergeräten anzupassen.

Weitere Informationen finden Sie unter Moderne Druckplattform und im Designhandbuch für die Drucksupport-App.

Um zwischen Farb- und Nichtfarbengeräten (Monochrom oder Graustufen) zu unterscheiden, rufen Windows 2000 und höhere NT-basierte Betriebssystemversionen die DrvDeviceCapabilities-Funktion auf, und übergeben die DC_COLORDEVICE Konstante im Aufruf. Diese Funktion gibt 1 zurück, wenn das Gerät Farbe unterstützt, und 0, wenn das Gerät eine Einfarb- oder Graustufenausgabe erzeugt. Es wird empfohlen, dass alle Druckertreiber Aufrufe von DrvDeviceCapabilities für die DC_COLORDEVICE Konstante unterstützen.

Es ist sehr wichtig, dass Treiber die DrvDeviceCapabilities-Funktion implementieren. Andernfalls ist es für das Betriebssystem schwieriger, aus folgenden Gründen zwischen Farb- und Nichtfarbengeräten zu unterscheiden:

  • Ein Aufruf der Funktion GetDeviceCaps (beschrieben in der Windows SDK-Dokumentation), bei dem die Konstante NUMCOLORS übergeben wird, führt normalerweise bei den meisten Nichtfarbgeräten zu einem Rückgabewert kleiner oder gleich 2 und bei Farbgeräten zu einem Wert größer als 2. Das Betriebssystem kann zwischen Einfarb- und Graustufengeräten nicht unterscheiden.

  • Der Wert des dmColor-Mitglieds der DEVMODEW-Struktur ist kein zuverlässiger Indikator dafür, ob es sich bei dem Gerät um ein Farb- oder Nichtfarbengerät handelt. Bestimmte Druckertreiber legen dieses Element auch für Geräte, die keine Farbe erzeugen können, auf DMCOLOR_COLOR fest.