java.sun.com

   JAVA - Bilder


 Startseite
 Bilder und Musik

 Indexverzeichnis


JAVA - Bilder

Kurzübersicht
Bilder laden
Bilder ausgeben
Zulässige Bildformate
Beispiel

  Seitenende


Kurzübersicht

"Bilder machen die Welt bunter". So auch das Internet. Aber Vorsicht! Jedes Bild braucht seine Zeit, bis es geladen ist. Man sollte sich deshalb vorher überlegen, ob man die Besucher gleich mit so viel Bilder "verschrecken" möchte.


  Seitenanfang


Bilder laden

Bilder werden in Applets normalerweise in der Methode public void init() geladen, da sie meistens beim Starten angezeigt werden sollen.
Die Klasse java.applet.Applet enthält zwei Methoden, die zum Laden von Bildern zuständig sind. Achtung! Sie funktionieren nur in Applets!

public Image getImage(URL url, String name)
public Image getImage(URL url)
URL gibt dabei immer die absolute Adresse der Datei an. Absolut heißt z.B. "http://www.selfjava.de".
Wenn die URL die selbe Adresse hat, wie das Applet, also das Bild z.B. im selben Ordner liegt, kann dies mit getCodeBase() beschrieben werden. Dies hat den Vorteil, daß wenn das Applet mal auf einem anderen Server abgelegt wird (das Bild muß allerdings auch mit verschoben werden), das Applet trotzdem läuft.

Für das Bild selbst ist die Klasse java.awt.Image zuständig.
Constructor: Image()

Da die Klasse Image abstract ist, kann von ihr kein Objekt abgeleitet werden. Ich kann die Klasse nutzen, muß aber sehen, daß ich das eigentliche Objekt von wo anders bekomme. Dies erfolgt über die Methode getImage der Klasse java.applet.Applet.
Ein Beispiel kann so aussehen:

Image img;
img = getImage(getCodeBase(),"images/Wochenende.jpg");

name ist der relative Bezug zu dieser absoluten Adresse, z.B. "images/Bild.gif". Ich habe festgestellt, daß immer wieder Probleme beim Laden von Bildern auftreten, wenn das Bild in einem "höheren" Ordner ist, also mit "../images/Bild.gif" angesprochen wird.


  Seitenanfang


Bilder ausgeben

Ausgegeben wird ein Bild in der paint-Methode.
Die Klasse java.awt.Graphics hat eine eigene Methode zum Bilder ausgeben.

g.drawImage(img, 10,15, this);
img ist das Image-Objekt. Danach folgen die x- und y-Positionen und zum Schluß muß ein sogenannte Image-Observer angegeben werden. Er ist für die richtige Verarbeitung zuständig. Er wird mit this festgelegt. Er verweist die Bildverarbeitung auf den aktuellen Container, das Applet.


  Seitenanfang


Zulässige Bildformate

Man sollte sich auf Bilder beschränken, die Internet-tauglich, d.h. klein sind und die ein Format enthalten, das ein Browser lesen kann.

Java unterstützt die Bildformate gif und jpg.


  Seitenanfang


Beispiel

BeispielProgrammbeispiel: Ansehen
import java.awt.*;
import java.applet.*;

public class Bild extends Applet{
	
  Image img; 
	
  public void init(){
    img = getImage(getCodeBase(),"images/java.gif");	
  }
	
  public void paint(Graphics g){
    g.drawImage(img, 10,10, this);	
  }
}

Im Programm wird ein Bild ausgegeben. Dieses wird zuerst in der Methode init geladen und über die Methode drawImage innerhalb der paint-Methode ausgeben.

 
weiter:
zurück:
  Musik
  Panel
  Seitenanfang © 1999-2001  Brit Schröter