Java ME是否支持0xAARRGGBB颜色格式?我的意思是,我可以通过修改像素的alpha值来改变图像的不透明度吗?我使用Graphics和Image类。
发布于 2011-05-20 18:16:10
这无疑会在不同的设备上有所不同。为什么不试一试看看呢?
编辑:好的,我猜你想知道怎么做。您需要的方法是Image.getRGB() --根据文档:
从该图像的指定区域获取ARGB像素数据,并将其存储在提供的整数数组中。每个像素值以0xAARRGGBB格式存储,其中高位字节包含alpha通道,其余字节分别包含红色、绿色和蓝色的颜色分量。alpha通道指定像素的不透明度,其中值0x00表示完全透明的像素,值0xFF表示完全不透明的像素。
修改所需的像素,然后使用数据通过Image.createRGBImage()创建新图像。
编辑:规范中说所有设备都应该允许alpha操作。
判断它们是否存在的一种方法是create a mutable image、get its graphics object、write some ARGB data to it,然后是read it back,然后查看alpha数据是否仍然存在;如果不存在,则可以打赌alpha透明度不受支持。
我链接到的方法应该就是完成此操作所需的全部方法,实际的方法我留作练习;)
https://stackoverflow.com/questions/6070440
复制相似问题