Farbe transparent machen

mavinatic

Bekanntes Mitglied
Hallo Javanatoren 😛

Ich habe ein Image, welches ein Rennauto darstellt. Nun habe ich dieses Auto mit der Farbe PINK umgeben. Nun möchte ich die pinke Farbe entfernen mit dem Programm. So das nur noch das Auto zusehen ist und kein Rechteckiger Kasten! Also sollte die Farbe PINK transparent sein?

Nun habe ich noch keine Ahnung wie ich die Farbe transperiere 🙁 und unter google finde ich auch nichts.

Habt ihr ne Idee wie ich die Pinke Farbe "entferne" ?

Gruß
 
Am einfachsten wäre es, das Bild als PNG zu speichern, und den durchsichtigen Bereich (mit einem Malprogramm) von vornherein durchsichtig zu machen.

Als Alternative könnte man die Farbe "Pink" von Hand mit "Durchsichtig" ersetzen. Da gäb's etliche mehr oder weniger elegante Möglichkeiten. Am einfachsten: Durch das ganze Bild (als BufferedImage) laufen, und jeden einzelnen Pixel mit getRGB(x,y) abfragen und ggf. mit setRGB(x,y,0) ersetzen. Eleganter wäre vermutlich eine LookupOp oder ColorConvertOp, da müßte man mal schauen...
 
Warum so kompliziert?
Einfach für Color den Alpha-Wert angeben und schon ist es transparent. Steht auch in der API.

Color(int r, int g, int b, int a)
Creates an sRGB color with the specified red, green, blue, and alpha values in the range (0 - 255).

Every color has an implicit alpha value of 1.0 or an explicit one provided in the constructor. The alpha value defines the transparency of a color and can be represented by a float value in the range 0.0 - 1.0 or 0 - 255. An alpha value of 1.0 or 255 means that the color is completely opaque and an alpha value of 0 or 0.0 means that the color is completely transparent.
 

Zurück
Oben