Java 字节为[]的MemoryImageSource(创建可行的颜色模型)

Java 字节为[]的MemoryImageSource(创建可行的颜色模型),java,memoryimagesource,Java,Memoryimagesource,我可以从整数数组中设置图像。(因为MemoryImageSource的整数版本可以用简单得多的构造函数实例化) 我试过: ComponentColorModel model = new ComponentColorModel( ColorSpace.getInstance(ColorSpace.CS_sRGB), false, false, ComponentColorModel.OPAQUE, DataBu

我可以从整数数组中设置图像。(因为MemoryImageSource的整数版本可以用简单得多的构造函数实例化)

我试过:

    ComponentColorModel model = new ComponentColorModel(
        ColorSpace.getInstance(ColorSpace.CS_sRGB),
        false,
        false,
        ComponentColorModel.OPAQUE,
        DataBuffer.TYPE_BYTE);
    ImageProducer ip = new MemoryImageSource(width, height, model, bytes, 0, width);
但图像似乎是空的(完全透明)。我尝试使用图像数据,但不使用alpha,还构建了有无alpha通道的模型没有图像显示

如果我将我的
byte[]
转换为
int[]
并使用构造函数,则根本没有问题:

MemoryImageSource(int w, int h, int[] pix, int off, int scan)
。。。但不适用于:

MemoryImageSource(int w, int h, ColorModel cm, int[] pix, int off, int scan)
我可能是使用了错误的颜色模型,但即使这样,我还是希望看到一些扭曲的像素数据(特别是使用usongcomponentcolormodel.不透明)