在图形中的透明度和颜色之间淡入淡出
Fade between transparency and a color in Graphics
我想在不添加图片的情况下完成如下所示的操作(在白色和透明度之间淡化)。
如果您使用的是 BufferedImage,则 alpha 通道只是 getRGB()
:
结果的最高有效字节
int alpha = (image.getRGB(x, y) & 0xFF000000) >> 24;
因此,您可以使用以下方法在保留颜色的同时更改 alpha:
int original = image.getRGB(x, y);
int newColor = (original & 0x00FFFFFF) | (alpha << 24);
image.setRGB(x, y, newColor);
(假设 0 <= alpha <= 255
)。
我想在不添加图片的情况下完成如下所示的操作(在白色和透明度之间淡化)。
如果您使用的是 BufferedImage,则 alpha 通道只是 getRGB()
:
int alpha = (image.getRGB(x, y) & 0xFF000000) >> 24;
因此,您可以使用以下方法在保留颜色的同时更改 alpha:
int original = image.getRGB(x, y);
int newColor = (original & 0x00FFFFFF) | (alpha << 24);
image.setRGB(x, y, newColor);
(假设 0 <= alpha <= 255
)。