Die Metadaten der Bilder werden in Klassenvariablen gespeichert:
Die Pixel werden gleich in einem Format gespeichert, das später für die Darstellung mitbenutzt werden kann. Hierzu bietet Java die Klasse BufferedImage an. Diese enthält für jeden Pixel einen Farbwert (int), der die drei Grundfarben RGB enthält.
// Bildrepräsentation
int breite = 100;
int hoehe = 150;
BufferedImage image = new BufferedImage(breite, hoehe, BufferedImage.TYPE_INT_RGB);
Jeder Bildpunkt ist entweder weiß (0) oder schwarz (1). Der Datenbereich enthält breite*hoehe Bildpunkte. Diese können durch ein Leerzeichen getrennt oder direkt hintereinander geschrieben werden. Ein Bildpunkt wird gemäß folgender Routine abgespeichert:
// Umwandeln des Pixels in RGB-Farbe und speichern
int weiss = 0:
int schwarz = 255<<16 | 255<<8 | 255;
if (pixel==0) rgb = weiss; else rgb = schwarz;
image.setRGB(x,y,rgb);
Aus dem gespeicherten Bild kann der Schwarzweißwert wieder ermittelt werden:
int color = image.getRGB(x, y) & 0xff;
if (color==0) pixel = 0; else pixel = 1;
Jeder Bildpunkt besteht aus einer Zahl zwischen 0 (weiß) und 255 (schwarz). Für die RGB-Farbe verwendet man für alle drei Grundtöne denselben Zahlenwert:
int rgb= pixel<<16 | pixel<<8 | pixel;
image.setRGB(x,y,rgb);
Bestimmung des Grauwertes:
int pixel = image.getRGB(x, y) & 0xff;
Jeder Bildpunkt besteht aus drei aufeinanderfolgenden Zahlen zwischen 0 (dunkel) und 255 (hell).
int rgb= pixel_rot<<16 | pixel_green<<8 | pixel_blue;
image.setRGB(x,y,rgb);