openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit be31a3ef0c8e1d7461b5235a4d9f5b9dade4f91a
parent 4a790cce34c2a009534df4608a368c06b19abd1b
Author: dankert <devnull@localhost>
Date:   Thu, 26 Apr 2007 21:33:22 +0200

In "img"-Tags Breite und H?he, "alt" und "title" von Bildern anzeigen.

Diffstat:
objectClasses/File.class.php | 29++++++++++++++++++++++++++---
textClasses/DocumentElement.class.php | 12++++++++++++
2 files changed, 38 insertions(+), 3 deletions(-)

diff --git a/objectClasses/File.class.php b/objectClasses/File.class.php @@ -42,6 +42,8 @@ class File extends Object var $fullFilename = ''; var $publish = null; var $mime_type = ''; + var $width = null; + var $height = null; @@ -90,9 +92,9 @@ class File extends Object $this->fullFilename = $filename; return $filename; } - - - + + + /** * Ermitteln des Dateinamens dieser Datei (ohne Pfadangabe) * @@ -217,6 +219,27 @@ class File extends Object /** + * Ermittelt Breite und Höhe des Bildes.<br> + * Die Werte lassen sich anschließend über die Eigenschaften "width" und "height" ermitteln. + */ + function getImageSize() + { + if ( is_null($this->width) ) + { + $this->write(); // Datei schreiben + + // Bildinformationen ermitteln + $size = getimagesize( $this->tmpfile() ); + + // Breite und Hoehe des aktuellen Bildes + $this->width = $size[0]; + $this->height = $size[1]; + } + } + + + + /** * Veraendert die Bildgroesse eines Bildes * * Diese Methode sollte natuerlich nur bei Bildern ausgefuehrt werden. diff --git a/textClasses/DocumentElement.class.php b/textClasses/DocumentElement.class.php @@ -818,6 +818,18 @@ class DocumentElement extends AbstractElement $tag = 'img'; $attr['src'] = $child->getUrl(); $attr['border'] = '0'; + + // Breite/Höhe des Bildes bestimmen. + $image = new File( $child->objectId ); + + $image->load(); + $attr['alt' ] = $image->name; + $attr['title' ] = $image->description; + + $image->getImageSize(); + $attr['width' ] = $image->width; + $attr['height'] = $image->height; + unset($image); } else {