如何检查给定图像在Java中是否为CMYK?

问题描述 投票:1回答:1

对于我的项目,我需要检测图像是否为CMYK。 Jai中是否有任何课程?是否有其他可能有用的库?

我尝试读取CMYK文件并显示它,但是颜色弄乱了。

RenderedOp image1 = JAI.create("stream", stream);
ScrollingImagePanel panel = new ScrollingImagePanel(image1, image1.getWidth(), image1.getHeight());
JFrame window = new JFrame("JAI Sample Program");
window.add(panel);
window.pack();
window.show();

如果我尝试通过以下代码检测CMYK,它将考虑图像rgb:

if (image1.getColorModel().getColorSpace().getType()==ColorSpace.TYPE_CMYK) {
        System.out.println("CMYK");
} 
if (image1.getColorModel().getColorSpace().getType()==ColorSpace.TYPE_RGB) {
    System.out.println("RGB");
}
java image image-processing image-manipulation
1个回答
2
投票

在我看来,您使用了错误的类。这些是其他支持CMYK图像的:https://docs.oracle.com/javase/7/docs/api/java/awt/color/ColorSpace.html

© www.soinside.com 2019 - 2024. All rights reserved.