Condividi tramite


Gestione dei colori delle immagini JPEG e PNG

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 le stampanti che forniscono supporto hardware di immagini compresse JPEG e PNG, la gestione dei colori deve essere gestita dal driver o dal dispositivo e non può essere gestita da GDI.

Prima che un'applicazione invii un'immagine compressa JPEG o PNG a una stampante, chiamerà ExtEscape con il codice di escape CHECKJPEGFORMAT o CHECKPNGFORMAT. Ciò comporta una chiamata alla funzione DrvQueryDeviceSupport del driver, con un tipo di query di QDS_CHECKJPEGFORMAT o QDS_CHECKPNGFORMAT e un buffer contenente l'immagine compressa.

Il driver può esaminare i dati dell'immagine e determinare se può supportare l'immagine. Il supporto dell'immagine deve includere l'esecuzione di trasformazioni di colore se è impostato il flag di XO_DEVICE_ICM della struttura XLATEOBJ o XO_HOST_ICM flag, perché GDI non può eseguire trasformazioni di colore su tali immagini.

Per queste immagini compresse, le informazioni sullo spazio dei colori sono in genere contenute nei dati dell'immagine. Un'eccezione è costituita dai file JFIF, che sono codificati con YCbCr e per cui lo spazio sRGB predefinito è una buona approssimazione. Tuttavia, un file JFIF potrebbe contenere un marcatore APPx proprietario che specifica uno spazio colore, nel qual caso il driver deve trasformare l'immagine usando lo spazio colore.

Per altre informazioni sul supporto di immagini compresse JPEG e PNG, vedere la sezione Osservazioni per DEVINFO.