Handbuch

3.0+44.10
Image API Erweiterungen

Die Image API von QF-Test benutzt für die Bildspeicherung die Klasse ImageRep. Diese Klasse speichert Bilder technologie- und plattformunabhängig. Des weiteren wird ein Interface bereitgestellt, um eigene Bildvergleiche durchzuführen.

44.10.1
Die ImageRep Klasse

Die Klasse de.qfs.apps.qftest.shared.extensions.image.ImageRep ist eine Wrapper Klasse für technologie- und plattformunabhängige Bildspeicherungen.

Die Klasse speichert das Bild entweder als ARGB-Informationen ab (ein Integer Feld) oder als RGB Information ab (ein byte Feld). Außerdem kann noch ein Name sowie die Höhe und Breite des Bildes gespeichert werden.

Die ImageRep Klasse bietet auch eine equals Methode, um Bildvergleiche durchzuführen. Falls Sie Ihren eigenen Bildschirmvergleichsalgorithmus verwenden möchten, müssen Sie das Interface ImageComparator implementieren. Diese eigene Erweiterung muss dann beim ImageRep Objekt noch registriert werden (siehe Abschnitt 44.10.2 für mehr Informationen).

 
 
ImageRep ImageRep()

Konstruktor der ImageRep Klasse.

 
ImageRep ImageRep(String name, byte[] rgb, boolean png, int width, int height)

Konstruktor der ImageRep Klasse.

Parameter
name Der Name des ImageRep Objektes.
rgb Ein byte-Feld, das die RGB-Information des Bildes enthält.
png Gibt an, ob das Bild bereits PNG formatiert ist.
width Die Breite des Bildes.
height Die Höhe des Bildes.
 
ImageRep ImageRep(String name, int[] argb, boolean png, int width, int height)

Konstruktor der ImageRep Klasse.

Parameter
name Der Name des ImageRep Objektes.
argb Ein int-Feld, das die ARGB-Information des Bildes enthält.
png GIbt an, ob das Bild bereits PNG formatiert ist.
width Die Breite des Bildes.
height Die Höhe des Bildes.
 
void setName(String name)

Setzt den Namen.

Parameter
name Der neue Name.
 
String getName()

Liefert den Namen.

RückgabewertDer aktuelle Name.
 
void setWidth(int width)

Setzt die Breite.

Parameter
width Die neue Breite.
 
int getWidth()

Liefert die Breite.

RückgabewertDie aktuelle Breite.
 
void setHeight(int height)

Setzt die Höhe.

Parameter
height Die neue Höhe.
 
int getHeight()

Liefert die Höhe.

RückgabewertDie aktuelle Höhe.
 
void setPng(byte[] png)

Setzt die RGB Information.

Parameter
png Die neue RGB Information.
 
byte[] getPng()

Liefert die RGB Information. Wenn keine RGB Information vorhanden ist, jedoch die ARGB Information, dann wird die aktuelle ARGB Information umgewandelt.

RückgabewertDie aktuelle RGB Information.
 
void setARGB(int[] argb)

Setzt die ARGB Information.

Parameter
argb Die neue ARGB Information.
 
int[] getARGB()

Liefert die ARGB Information. Wenn keine ARGB Information vorhanden ist, jedoch die RGB Information, dann wird die aktuelle RGB Information umgewandelt.

RückgabewertDie aktuelle ARGB Information.
 
void setComparator(ImageComparator comparator)

Setzt eine ImageComparator Implementierung, welche für Bildvergleiche verwendet wird.

Parameter
comparator Die neue ImageComparator Implementierung.
 
ImageComparator getComparator()

Liefert die aktuelle ImageComparator Implementierung.

RückgabewertDie aktuelle ImageComparator Implementierung.
 
boolean equals(ImageRep compare)

Liefert zurück, ob das aktuelle Bild mit einem anderen Bild gleich ist. Dazu wird die equals Methode der aktuellen ImageComparator Implementierung verwendet.

Parameter
compare Das zu vergleichende ImageRep Objekt.
RückgabewertTrue, wenn die Bilder gleich sind, sonst false.
 
int getPixel(int x, int y)

Liefert den ARGB-Wert für ein Pixel.

Parameter
x Die X Koordinate des Pixels.
y Die Y Koordinate des Pixels.
RückgabewertDer Pixelwert.
 
void crop(int x, int y, int width, int height)

Speichert nur einen speziellen Ausschnitt des Bildes.

Parameter
x Die X Koordinate der linken oberen Ecke des Bereiches.
y Die Y Koordinate der linken oberen Ecke des Bereiches.
width Die Breite des Bereiches.
height Die Höhe des Bereiches.
 
 
44.10.2
Das ImageComparator Interface

Das Interface de.qfs.apps.qftest.shared.extensions.image.ImageComparator kann implementiert werden, wenn Sie einen eigenen Bildvergleichsalgorithmus verwenden wollen.

Die Implementierung muss dann beim verwendeten ImageRep Objekt mittels der setComparator Methode registriert werden.

 
 
boolean equals(ImageRep actual, ImageRep expected)

Liefert zurück, ob das aktuelle Bild mit einem anderen Bild gleich ist. Dazu wird die equals Methode der aktuellen ImageComparator Implementierung verwendet.

Parameter
actual Das aktuelle ImageRep Objekt.
expected Das erwartete ImageRep Objekt.
RückgabewertTrue, wenn die Bilder gleich sind, sonst false.