Hallo,
ich möchte von einem eingelesenen GIF einzelne Pixelwerte ändern.
Dazu habe ich ein BufferedImage benutzt und prüfe dann pixelweise. Ist es ein schwarzes Pixel, soll es rot werden.
Zum Bestimmen des Farbwertes benutze ich getRGB(), zum Setzen wollte ich dann setRGB() benutzen.
Folgenden Code habe ich bisher:
Er findet schonmal alle schwarzen Pixel und geht entsprechend ins if, aber er setzt mir das Pixel dann nicht in die neue Farbe. in Zeile 12-14 hab ich es auf verschiedenen Weisen probiert, aber nichts ging.
Wäre sehr dankbar, wenn mir jemand helfen könnte.
ich möchte von einem eingelesenen GIF einzelne Pixelwerte ändern.
Dazu habe ich ein BufferedImage benutzt und prüfe dann pixelweise. Ist es ein schwarzes Pixel, soll es rot werden.
Zum Bestimmen des Farbwertes benutze ich getRGB(), zum Setzen wollte ich dann setRGB() benutzen.
Folgenden Code habe ich bisher:
Code:
BufferedImage bimg = new BufferedImage(20,20,BufferedImage.TYPE_INT_ARGB);
try{
bimg = ImageIO.read(new File("test.gif"));
}catch(IOException ioex){}
g.drawImage(bimg, 100, 100, 20, 20 , this);
Color color = new Color(210,20,0);
int farbe = color.getRGB();
for(int i = 1; i<bimg.getWidth(); i++)
for (int j = 1; j < bimg.getHeight(); j++) {
if(bimg.getRGB(i,j)==Color.BLACK.getRGB())
{
bimg.setRGB(i,j,Color.RED.getRGB());
// bimg.setRGB(i,j,farbe);
// bimg.setRGB(i,j,0xffff0000);
}
}
g.drawImage(bimg, 200, 200, 20, 20 , this);
Er findet schonmal alle schwarzen Pixel und geht entsprechend ins if, aber er setzt mir das Pixel dann nicht in die neue Farbe. in Zeile 12-14 hab ich es auf verschiedenen Weisen probiert, aber nichts ging.
Wäre sehr dankbar, wenn mir jemand helfen könnte.