在图形中的透明度和颜色之间淡入淡出

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)。