Hauptseite | Alphabetische Liste | Auflistung der Klassen | Auflistung der Dateien | Klassen-Elemente | Datei-Elemente

JuelichImage Klassenreferenz

Die Klasse für die Produkt-Bilder. Mehr...

Aufstellung aller Elemente

Öffentliche Methoden

 JuelichImage ()
 Stößt die Bild-Generierung an.
 getContentType ()
 Liefert den MIME-Type.
 deliverImage ()
 Gibt das aktuelle Bild aus.
 getImage ($mode, $id)
 Holt ein Bild entweder aus dem Cache oder aus der Datenbank.
 makeThumbnail ()
 Verkleinert ein Bild auf 100 Pixel Breite oder Höhe.

Öffentliche Attribute

 $type = "text/plain"
 der MIME-Type
 $image
 das Bild
 $success = false
 der interne Zustand


Ausführliche Beschreibung

Die Klasse für die Produkt-Bilder.

Holt ein Bild aus der Datenbank und liefert es aus. Kann nur mir JPG-Dateien umgehen und verläßt sich bei der Bildverarbeitung auf die GD-Bibliothek.

Definiert in Zeile 16 der Datei JuelichImage.php.


Beschreibung der Konstruktoren und Destruktoren

JuelichImage::JuelichImage  ) 
 

Stößt die Bild-Generierung an.

Definiert in Zeile 26 der Datei JuelichImage.php.

00026 { 00027 $data =& getDataInstance(); 00028 $path = explode('/', $data->getPathInfo()); 00029 if (count($path) != 3) { 00030 include_once TM_PATH . 'juelich/web/JuelichError.php'; 00031 $error = new JuelichError; 00032 $error->printError(5, 00033 'Image-URL hat falsche Parameterzahl: ' 00034 . implode('/', $path)); 00035 exit(); 00036 } 00037 $mode = $path[0]; 00038 $id = $path[1]; 00039 00040 if ($mode == 'p' || $mode == 'ps' || $mode == 'z') { 00041 $this->getImage($mode, $id); 00042 } 00043 else { 00044 include_once TM_PATH . 'juelich/web/JuelichError.php'; 00045 $error = new JuelichError; 00046 $error->printError(5, 00047 'Image-URL, unbekannter Modus: ' 00048 . $mode); 00049 exit(); 00050 } 00051 if ($this->success) { 00052 $this->type = 'image/jpeg'; 00053 } 00054 return; 00055 }


Dokumentation der Elementfunktionen

JuelichImage::deliverImage  ) 
 

Gibt das aktuelle Bild aus.

Definiert in Zeile 70 der Datei JuelichImage.php.

00070 { 00071 if ($this->success) { 00072 imagejpeg($this->image, '', 100); 00073 } 00074 }

JuelichImage::getContentType  ) 
 

Liefert den MIME-Type.

Definiert in Zeile 61 der Datei JuelichImage.php.

00061 { 00062 return $this->type; 00063 }

JuelichImage::getImage mode,
id
 

Holt ein Bild entweder aus dem Cache oder aus der Datenbank.

Parameter:
mode der Modus des Bildes
id die Id des Bildes
Definiert in Zeile 83 der Datei JuelichImage.php.
00083 { 00084 $imgFs = IMG_CACHE_DIR . '/' . $mode . $id . '.jpg'; 00085 $imgDb = 'p' . $id; 00086 if ($mode == 'z') { 00087 $imgDb = 'z' . $id; 00088 } 00089 if (file_exists($imgFs)) { 00090 $this->image = imagecreatefromjpeg($imgFs); 00091 if (empty($this->image)) { 00092 include_once TM_PATH . 'juelich/web/JuelichError.php'; 00093 $error = new JuelichError; 00094 $error->printError(4, 00095 'Image kann nicht erzeugt werden (FS): ' 00096 . $imgFs); 00097 exit(); 00098 } 00099 $this->success = true; 00100 return; 00101 } 00102 $db =& getDbReaderInstance(); 00103 $iData = array(); 00104 $db->getImage($imgDb, $iData); 00105 if (empty($iData)) { 00106 include_once TM_PATH . 'juelich/web/JuelichError.php'; 00107 $error = new JuelichError; 00108 $error->printError(5, 00109 'Image nicht in der DB enthalten: ' 00110 . $imgDb); 00111 exit(); 00112 } 00113 $this->image = imagecreatefromstring($iData['i_data']); 00114 if (empty($this->image)) { 00115 $error->printError(4, 00116 'Image kann nicht erzeugt werden (DB): ' 00117 . $imgDb); 00118 exit(); 00119 } 00120 if ($mode == 'ps') { 00121 $this->success = $this->makeThumbnail(); 00122 } 00123 $this->success = imagejpeg($this->image, $imgFs, 100); 00124 return; 00125 }

JuelichImage::makeThumbnail  ) 
 

Verkleinert ein Bild auf 100 Pixel Breite oder Höhe.

Rückgabe:
true bei Erfolg, sonst false
Definiert in Zeile 132 der Datei JuelichImage.php.
00132 { 00133 $imgBig = $this->image; 00134 $wBig = imagesx($imgBig); 00135 $hBig = imagesy($imgBig); 00136 00137 $wThumb = 0; 00138 $hThumb = 0; 00139 $need = false; 00140 if ($wBig >= $hBig && $wBig > 100) { 00141 $wThumb = 100; 00142 $hThumb = round($hBig / ($wBig / 100), 0); 00143 $need = true; 00144 } 00145 elseif ($hBig > 100) { 00146 $wThumb = round($wBig / ($hBig / 100), 0); 00147 $hThumb = 100; 00148 $need = true; 00149 } 00150 if (!$need) { 00151 return true; 00152 } 00153 $imgThumb = imagecreatetruecolor($wThumb, $hThumb); 00154 imagecopyresampled($imgThumb, 00155 $imgBig, 00156 0, 00157 0, 00158 0, 00159 0, 00160 $wThumb, 00161 $hThumb, 00162 $wBig, 00163 $hBig); 00164 imagedestroy($imgBig); 00165 $this->image = $imgThumb; 00166 return true; 00167 }


Dokumentation der Datenelemente

JuelichImage::$image
 

das Bild

Definiert in Zeile 19 der Datei JuelichImage.php.

JuelichImage::$success = false
 

der interne Zustand

Definiert in Zeile 20 der Datei JuelichImage.php.

JuelichImage::$type = "text/plain"
 

der MIME-Type

Definiert in Zeile 18 der Datei JuelichImage.php.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:
Erzeugt am Sun May 14 02:49:09 2006 für JuelichWeb von doxygen 1.3.8