Итак, я пытаюсь изменить яркость изображения на короткий промежуток времени, а затем сбросить яркость. Однако, когда я пытаюсь сделать это, изображение становится темным, а не оригинальным. Вот мой кодКак сбросить яркость буферизованного изображения
BufferedImage image = ImageIO.read(getClass().getResource("/image.png"));
private void changeBrightness(){
RescaleOp bright = new RescaleOp(1.5f, 0, null);
RescaleOp normal = new RescaleOp(0.66f, 0, null);
image = bright.filter(image, image);
wait(0.5);
image = normal.filter(image, image);
}
Когда этот метод получил название, яркость меняется отлично, но это изменение обратно, что все странно. Изображение становится темным. У меня есть шкала яркости для нормали до 0,66, потому что 2/3 раза 1,5 равна той, которую я хочу. Если кто-то знает, что я делаю неправильно, я был бы признателен за это.
Держите ссылку на оригинал? – MadProgrammer
Я предлагаю создать клон «BufferedImage» и увеличить яркость. Таким образом, вы можете сохранить оригинальную версию и не потерять качество, дважды манипулируя изображением. – Tom
Спасибо, я не знаю, почему я не думал, что это кажется мне очевидным. Большое спасибо, это действительно помогло! – NGSoftware