Мне нужно добавить изображение CMYK (java.awt.BufferedImage
) в PDF-документ с помощью iText.
Я пытаюсь сделать это с помощью:
com.lowagie.text.Image img = Image.getInstance(BufferedImage, bgColor);
Это создает изображение RGB в результирующем PDF-файле. (и я предполагаю, что это ошибка, потому что он просто игнорирует ColorModel
). Однако я мог бы использовать:
com.lowagie.text.Image img = Image.getInstance(byte[] rawData);
И он создает правильное изображение CMYK в формате PDF. Но во втором случае мне нужно преобразовать java.awt.BufferedImage
в ByteArray
. Я не могу сделать это с ImageIO.write(ByteArrayOutputStream)
. Я также не могу сделать это с com.sun.image.codec.jpeg.JPEGImageEncoder
, потому что я должен использовать OpenJDK
.
Любые идеи, как я могу добиться правильного поведения для записи изображения CMYK в PDF с помощью iText?