Hallo,
ich versuche momentan Dateien in Bildern zu verstecken indem ich die einzelnen bytes des rgb-Wertes der Pixel ändere.
Allerdings scheitert die Konvertierung vom rgb-integer in einen byte-array und zurück, da sich der Wert ändert. Die folgende Methode sollte nutzt die Klasse Color aus der Java-Bibliothek und sollte korrekt konvertieren, allerdings ist der Alpha-Wert immer unterschiedlich, nur die Farben stimmen. Mache ich etwas falsch oder ist das ein Fehler in Java?
ich versuche momentan Dateien in Bildern zu verstecken indem ich die einzelnen bytes des rgb-Wertes der Pixel ändere.
Allerdings scheitert die Konvertierung vom rgb-integer in einen byte-array und zurück, da sich der Wert ändert. Die folgende Methode sollte nutzt die Klasse Color aus der Java-Bibliothek und sollte korrekt konvertieren, allerdings ist der Alpha-Wert immer unterschiedlich, nur die Farben stimmen. Mache ich etwas falsch oder ist das ein Fehler in Java?
Java:
Random r = new Random();
int red = r.nextInt(255), green = r.nextInt(255), blue = r.nextInt(255), alpha = r.nextInt(255);
Color one = new Color(red, green, blue, alpha);
Color two = new Color(one.getRGB());
System.out.println(one.getRed() + " " + one.getGreen() + " " + one.getBlue() + " " + one.getAlpha());
System.out.println(two.getRed() + " " + two.getGreen() + " " + two.getBlue() + " " + two.getAlpha());