Как нарисовать BufferedImage с цветным оттенком

Я пытаюсь нарисовать BufferedImage к моему Canvas с переменным оттенком цвета, но не могу найти никаких реальных рабочих примеров.

Я не хочу создавать новый тонированный BufferedImage, но неоднократно нарисуйте BufferedImage на мой графический интерфейс в режиме реального времени с различными оттенками цвета, в зависимости от различных условий.
Изображение нарисовано с оттенком цвета 0xFF0000 будет отображаться как только красное изображение, а оттенок 0xFFFFFF не повлияет на изображение.

Как бы я мог сделать такую ​​вещь, используя Graphics2D экземпляр моего контроля?

Заранее спасибо.

1 ответ

Может быть, ColorTintFilter из книги Filthy Rich Clients может вам помочь. Соответствующий пример главы из книги доступен здесь.

Вот фрагмент кода, который использует фильтр:

BufferedImage image = ...;
BufferedImageOp imageFilter = new ColorTintFilter(Color.RED, 1.0f);
image = imageFilter.filter(image, null);
Другие вопросы по тегам