Transparente Icons mit Echo2 PDF Drucken E-Mail
Nutzt man Bilddateien in einem geeigneten Format (mit Informationen zum Alphakanal), kann man diese Bilder in Swing- oder AWT-Anwendungen als transparente Icons einbinden. Versucht man das mit denselben Bildern in einer Echo2-GUI, kann das zu Enttäuschungen führen.

Es existieren verschiedene Möglichkeiten, Bilder in Echo2-GUIs einzubinden. Allen gemeinsam ist, dass die Bilder durch Klassen, die das Interface ImageReference implementieren, eingebunden werden. Implementierungen dieses Interfaces existieren zahlreich, daher hier nur eine unvollständige Auswahl:

  • HttpImageReference
  • StreamImageReference
  • AwtImageReference
  • ResourceImageReference

Als mit Swing/AWT vertrauter Programmierer wird man vielleicht zuerst sein Glück mit AwtImageReference versuchen. Benutzt man diese Klasse wie folgt

import nextapp.echo2.app.*
import javax.swing.ImageIcon;
ImageIcon testingicon=new ImageIcon(
        this.getClass().getClassLoader.getResource("somepic.gif"));
ImageReference testingir=new AwtImageReference(testingicon.getImage());

wird man statt transparenter Icons solche mit dickem schwarzen Trauerrand ernten:

Image
Transparentes Icon fehlerhaft (Zoom 200%)
 

Wirklich transparente  Icons erhält man, wenn man den Code oben durch den folgenden ersetzt:

import javax.swing.ImageIcon;
ImageReference testingir=new ResourceImageReference("somepic.gif");

Image
Transparentes Icon (Zoom 200%)