Freigeben über


Identifizieren der Farbfunktion eines Druckers

Wichtig

Es wird empfohlen, den IPP-Posteingangsklassentreiber von Microsoft zusammen mit Druckunterstützungs-Apps (PSA) zu verwenden, um die Druckoberfläche in Windows 10 und 11 für die Druckergeräteentwicklung anzupassen.

Weitere Informationen finden Sie im Designhandbuch für Druckunterstützungs-Apps.

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

Für Treiber ist es sehr wichtig, die DrvDeviceCapabilities-Funktion zu implementieren. Andernfalls ist es für das Betriebssystem schwieriger, zwischen farb- und unfarbigen Geräten zu unterscheiden, aus den folgenden Gründen:

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

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