我正在尝试使用 Java 将 RGB 图像转换为 CMYK 图像。我看过这段代码:
BufferedImage rgbImage = ImageIO.read(new File("d:\\Temp\\IMG_1748x2480.jpg"));
BufferedImage cmykImage = null;
ColorSpace cpace = new ICC_ColorSpace(ICC_Profile.getInstance(
TestConvertRGBToCMYK.class.getClassLoader().getResourceAsStream(
"CMYK_Profiles/USWebCoatedSWOP.icc")));
ColorConvertOp op = new ColorConvertOp(rgbImage.getColorModel().getColorSpace(), cpace, null);
cmykImage = op.filter(rgbImage, null);
ImageIO.write(cmykImage, "JPEG", new File("d:\\Temp\\CMYK_Sample_RGB_OUTPUT2.jpg"));
但问题是结果图像显示为黑色。阅读谷歌观点(帖子)后,我读到这是正常的,因为视图与 CMYK 图像不兼容,但 PDF 视图兼容。但问题是,如果我将图像放入 PDF 中,图像继续显示为黑色。
有没有人知道发生了什么?还是有任何其他转换效果更好的转换器?