tutorials.de Buch-Aktion 02/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
1128
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    thomy800 thomy800 ist offline Mitglied Gold
    Registriert seit
    Apr 2007
    Beiträge
    242
    Hi

    Ich habe ein BufferedImage, möglicherweise vom Typ RGB (also ohne A[lpha]). Nun soll das komplette Bild transparent in Graphics gezeichnet werden. Die Transparenz ändert sich ständig (ca. alle 50 Millisekunden), es ist also nicht zwingend notwendig das BufferedImage selbst abzuändern.
    Die Preisfrage ist, wie bewerkstellige ich das am einfachsten/schnellsten?
    An sich würde ich jedes mal das komplette Bild in ein BufferedImage Typ RGBA kopieren, getRaster, und setPixel anwenden, wobei ich über eine Bittverschiebung für jeden Pixel einzeln die Transparenz neu berechne. Abschließend müsste es dann über drawImage gemalt werden. Dies scheint mir jedoch ziehmlich aufwendig und (durch das Kopieren des Bildes) nicht besonders leistungsfähig zu sein.
    Kennt jemand noch eine bessere Variante? Gibt es überhaupt eine bessere?

    MfG thomy800
     
    Hier kommt der Genuss!

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.724
    Blog-Einträge
    29
    Hallo,

    versuchs mal mit einem AlphaComposite.

    schau mal hier:
    http://www.tutorials.de/forum/java/2...ashscreen.html

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  3. #3
    thomy800 thomy800 ist offline Mitglied Gold
    Registriert seit
    Apr 2007
    Beiträge
    242
    Vielen Dank, das vereinfachts sehr!
    Aber wie bekomme ich den gesetzten Composite wieder weg? Sonst wird alles tranparent gemalt... g.setComposite(null) funktioniert nicht...

    Hab das jetzt einfach so gemacht:
    Code java:
    1
    
    g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER,1.0F));
    Geändert von thomy800 (09.03.10 um 23:28 Uhr)
     
    Hier kommt der Genuss!

Ähnliche Themen

  1. bild transparent machen
    Von thehasso im Forum Photoshop
    Antworten: 14
    Letzter Beitrag: 02.04.09, 21:58
  2. SWT Composite transparent machen
    Von TGCFreezer im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 1
    Letzter Beitrag: 24.04.08, 10:12
  3. groupBox transparent machen
    Von Fridulin im Forum .NET Windows Forms
    Antworten: 10
    Letzter Beitrag: 18.10.06, 14:30
  4. GFX für Homepage transparent machen...
    Von welken im Forum Photoshop
    Antworten: 4
    Letzter Beitrag: 06.01.05, 12:02
  5. Ebene transparent machen?
    Von FalseTrue im Forum Flash Plattform
    Antworten: 2
    Letzter Beitrag: 16.12.04, 22:50