Я знаю, что RGB для мониторов, а CMYK для печати, но я хочу работать с CMYK без каких-либо преобразований. Я хочу загрузить изображение CMYK (jpeg) и распечатать его. Но когда я использовал
com.sun.image.codec.jpeg.JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(is);
return decoder.decodeAsBufferedImage();
, я получил изображение с инвертированными цветами. Как я могу получить такое же изображение в CMYK?
Java: Как работать с изображением CMYK?
Ответы (1)
Причина, по которой ваши цвета инвертированы, заключается в том, что у вас есть специальный вариант изображения CMYK JPEG, а именно Adobe CYYK. Странные цвета возникают из-за старой ошибки Photoshop (значения CMYK инвертированы), которая теперь стала стандартом де-факто, который обрабатывается большинством программ JPEG (кроме Java).
Правильное преобразование CMYK (обработка различных вариантов, использование правильного цветового профиля и т. д.) можно найти по адресу: https://stackoverflow.com/a/12132630/413337.
person
Codo
schedule
29.09.2014
inversed colors image
, на бумаге (в печатном виде) или на вашем экране? - person Eypros   schedule 29.09.2014