Hallo also ich habe eine grafik und lese diese pixel für pixel ein will prüfen welche farbe sie haben und sie nach
einer kurzen berechnung ändern um dan zum nächsten pixel zu kommen.
nun jedoch mein problem ich nutze BufferedImage.setRGB(x, y, RGB); ich weis aber nicht wie jave den
RGB Code in ein int umwandelt. ich hab es mit einfach mal als string ausgeben lassen und eine merkwüdige
- zahl bekommen scheinbar ohne sin nun möchte ich von euch erfahren wie ich zb. den
standart farbcode (255.000.255) in einen int umwandeln kann und andersrum.
zudem möchte ich wissen wie ich dem bild eine transparenz hinzufüge.
hier ein kleiner ausschnitt:
da steht zwar LIGHT_GRAY ist aber ein leicht dunkles Rot warum auch immer.
einer kurzen berechnung ändern um dan zum nächsten pixel zu kommen.
nun jedoch mein problem ich nutze BufferedImage.setRGB(x, y, RGB); ich weis aber nicht wie jave den
RGB Code in ein int umwandelt. ich hab es mit einfach mal als string ausgeben lassen und eine merkwüdige
- zahl bekommen scheinbar ohne sin nun möchte ich von euch erfahren wie ich zb. den
standart farbcode (255.000.255) in einen int umwandeln kann und andersrum.
zudem möchte ich wissen wie ich dem bild eine transparenz hinzufüge.
hier ein kleiner ausschnitt:
Java:
public Player() {
//load Player data from server or save.
int replaceRedWidth = 0;
int replaceBlueWidth = 0;
try {
skin = ImageIO.read(getClass().getResource("Skin.png"));
} catch (IOException ex) {
System.out.println("can not find Skin.png");
}
for (int y = 0; y < skin.getHeight(); y++) {
for (int x = 0; x < skin.getWidth(); x++) {
int color = skin.getRGB(x, y);
skin.setRGB(x, y, Color.LIGHT_GRAY.getRGB());
}
}
}
da steht zwar LIGHT_GRAY ist aber ein leicht dunkles Rot warum auch immer.
Zuletzt bearbeitet von einem Moderator: