Identificazione della funzionalità colore di una stampante
Importante
La piattaforma di stampa moderna è il mezzo preferito di Windows per comunicare con le stampanti. Ti consigliamo di usare il driver di classe IPP di Microsoft, insieme a Print Support Apps (PSA), per personalizzare l'esperienza di stampa in Windows 10 e 11 per lo sviluppo di dispositivi per stampanti.
Per altre informazioni, vedere Piattaforma di stampa moderna e guida alla progettazione dell'app di supporto per la stampa.
Per distinguere tra dispositivi colore e non colore (monocromatico o scala di grigi), Windows 2000 e versioni successive del sistema operativo basato su NT chiamano la funzione DrvDeviceCapabilities , passando la costante DC_COLORDEVICE nella chiamata. Questa funzione restituisce 1 se il dispositivo supporta il colore e 0 se il dispositivo produce output monocromatico o in scala di grigi. È consigliabile che tutti i driver della stampante supportino le chiamate a DrvDeviceCapabilities per la costante DC_COLORDEVICE.
È molto importante per i driver implementare la funzione DrvDeviceCapabilities. In caso contrario, per i motivi seguenti è più difficile per il sistema operativo distinguere tra i dispositivi di colore e non colori:
Una chiamata alla funzione GetDeviceCaps (descritta nella documentazione di Windows SDK), in cui viene passata la costante NUMCOLORS, in genere restituisce un valore restituito minore o uguale a 2 per la maggior parte dei dispositivi noncolor e maggiore di 2 per i dispositivi a colori. Il sistema operativo non è in grado di distinguere tra dispositivi monocromatici e in scala di grigio.
Il valore del membro dmColor della struttura DEVMODEW non è un indicatore affidabile del fatto che il dispositivo sia un dispositivo color o noncolor. Alcuni driver della stampante impostano questo membro su DMCOLOR_COLOR anche per i dispositivi che non sono in grado di produrre colore.