我正在尝试在 CMYK 颜色空间中创建图像,并在使用它之后,例如画线等,将其保存到文件中。不幸的是,互联网上没有很多关于 Java 中 CMYK 的信息。我只找到了一篇文章http://carback.us/rick/blog/?p=58。但是使用 iText 库将图像保存为 Pdf。但我需要将其保存为 png 或 jpeg 文件。这是代码:
public BufferedImage createCMYKBufferedImage(double l_width, double l_height) {
ColorSpace colorSpace = SimpleCMYKColorSpace.getInstance();
ComponentColorModel l_ccm = new ComponentColorModel(colorSpace, false, false,
1, DataBuffer.TYPE_FLOAT);
int[] l_bandoff = {0, 1, 2, 3}; //Index for each color (C, is index 0, etc)
PixelInterleavedSampleModel l_sm = new PixelInterleavedSampleModel(
DataBuffer.TYPE_FLOAT,
(int)l_width, (int)l_height,
4,(int)l_width*4, l_bandoff);
WritableRaster l_raster = WritableRaster.createWritableRaster(l_sm,
new Point(0, 0));
return new BufferedImage(l_ccm, l_raster, false, null);
}
当我试图保存图像时,我只是在打电话
ImageIO.write(图像,格式,文件);
有谁能够帮我?