Управление цветами изображений JPEG и PNG
Внимание
Современная платформа печати — это предпочтительный способ взаимодействия с принтерами Windows. Рекомендуется использовать драйвер класса "Входящие" Microsoft IPP вместе с приложениями поддержки печати (PSA), чтобы настроить возможности печати в Windows 10 и 11 для разработки устройств принтера.
Дополнительные сведения см. в статье "Современная платформа печати" и руководство по проектированию приложений поддержки печати.
Для принтеров, поддерживающих аппаратное обеспечение сжатых изображений JPEG и PNG, управление цветами должно обрабатываться драйвером или устройством и не может обрабатываться GDI.
Перед отправкой сжатого изображения JPEG или PNG на принтер он вызовет ExtEscape с помощью escape-кода CHECKJPEGFORMAT или CHECKPNGFORMAT. Это приводит к вызову функции DrvQueryDeviceSupport драйвера с типом запроса QDS_CHECKJPEGFORMAT или QDS_CHECKPNGFORMAT и буфером, содержащим сжатый образ.
Драйвер может проверить данные изображения и определить, может ли он поддерживать образ. Поддержка изображения должна включать преобразование цвета, если флаг XO_DEVICE_ICM структуры XLATEOBJ или флаг XO_HOST_ICM установлен, так как GDI не может выполнять преобразования цвета на таких изображениях.
Для этих сжатых изображений информация о цветовом пространстве обычно содержится в данных изображения. Одним из исключений является JFIF-файлы, которые кодируются в кодировке YCbCr и для которых пространство по умолчанию sRGB является хорошим приближением. Однако JFIF-файл может содержать собственный маркер APPx , указывающий цветовое пространство, в этом случае драйвер должен преобразовать изображение с помощью цветового пространства.
Дополнительные сведения о поддержке сжатых изображений JPEG и PNG см. в разделе "Примечания" для DEVINFO.