Transparenz bei Vektorgrafiken?

Status
Nicht offen für weitere Antworten.

Donut

Bekanntes Mitglied
ich habs mal hier gepostet, weil ich nich genau wusste, whin das nur gehört :?

Also folgendes Problem:
Wie kann man Vektorgrafiken Transparent machen?

Angenommen ich zeichne 2 Rechtecke übereinander (veschoben) und die verdeckte Ecke soll durchscheinen .. also etwa so:
java-trans.jpf


geht das und wenn ja wie?
 
B

Beni

Gast
Die gute Nachricht:
Es ist möglich.
Wenn Du ein Standart-SDK installiert hast (und klugerweise die Demos mit), dann findest Du z.B.: unter c:\j2sdk1.5.0_beta\demo\jfc\Java2D ein Demoprogramm (inkl. Sourecode), welches die volle Leistung von Java zeigt.

Die schlechte Nachricht:
Ich habe keine Ahnung, wie das funktioniert.

Was ich rausgefunden habe ist, dass AlphaComposit und setComposit eine wichtige Rollte spielen.

Hoffe, das ist wenigstens mal ein Anfang.
 
G

Guest

Gast
booa Danke! :)
ich hatte schon befürchtet ich müsste da selbst mit Fraben auslesen rumwurschteln :D

Falls jemand weiß, wie es genau geht bitte hier rein posten .. wenn ichs selbst rausgefunden habe, mache ich es :lol:
 

Donut

Bekanntes Mitglied
habs hingekriegt:


Code:
public void paint(Graphics g)
{

float blend=0.5;                                          // float-wert für die Transparenz (0.0-1.0)
Graphics2D g2=(Graphics2D) g;                             // Graphics in Graphics2D umwandeln
Composite composite=AlphaComposite.getInstance(AlphaComposite.SRC_OVER, blend);  //dieses schwierige Teil ;)

g2.setComposite(composite); //Transparenz anwenden

g2.setColor(new Color(255, 0, 0);           //Färben
g2.fillRect(100, 100, 200, 200);            //Malen

g2.setColor(new Color(255, 255, 0);        //Färben
g2.fillRect(150, 150, 200, 200);           //Malen


}
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben