Arbeiten mit Bildern: Unterschied zwischen den Versionen
Aus Contao Community Documentation
(→Codebeispiele) |
Xtra (Diskussion | Beiträge) K (Kleinere Korrekturen und stilistisch ein wenig aufbereitet.) |
||
Zeile 1: | Zeile 1: | ||
[[Category:Dev HOWTOS]] | [[Category:Dev HOWTOS]] | ||
[[Category:Dev Snippets]] | [[Category:Dev Snippets]] | ||
− | {{AppliesTo|TLVersion=ab 2.7|Version=ab 2.9}} | + | {{AppliesTo |
+ | |TLVersion=ab 2.7 | ||
+ | |Version=ab 2.9 | ||
+ | }} | ||
Das Contao-Framework stellt folgende Methoden für das Arbeiten mit Bildern zur Verfügung: | Das Contao-Framework stellt folgende Methoden für das Arbeiten mit Bildern zur Verfügung: | ||
# generateImage() | # generateImage() | ||
# getImage() | # getImage() | ||
− | + | Die Original-Daten, welche meistens unter dem Ordner '''tl_files''' abgelegt sind werden aufbereitet. | |
+ | Hierzu wird das Bild in der entsprechenden Größe unter '''system/html''' abgelegt und auf der Webseite werden nur noch Verweise auf diese erzeugte Kopie ausgegeben. | ||
== getImage() == | == getImage() == | ||
− | Die Methode getImage() ist in der Controller.php angesiedelt und | + | Die Methode getImage() ist in der Datei Controller.php angesiedelt und stellt fünf Parameter zur Verfügung, von welchen die ersten drei verpflichtend sind. |
− | Aktuell unterstützt Contao die folgenden Bildformate: jpeg, jpg, png, gif | + | Die Methode erstellt eine neue Version des Original-Bildes und legt dieses im Cache Verzeichnis /system/html ab. |
+ | Es wird eine URL zum neuen Bild zurück gegeben. Dieser Rückgabewert wird dann mit der Methode generateImage() (siehe unten) weiter verarbeitet. | ||
+ | |||
+ | Aktuell unterstützt Contao die folgenden Bildformate: jpeg, jpg, png, gif (sofern die installierte Version der glib das jeweilige Format auch bereitstellt). | ||
=== Parameter === | === Parameter === | ||
# $image: Enthällt den Pfad zu dem Bild welches bearbeitet werden soll. (BSP: tl_root/images/foobar.jpg) | # $image: Enthällt den Pfad zu dem Bild welches bearbeitet werden soll. (BSP: tl_root/images/foobar.jpg) | ||
− | # $width: enthällt die gewünschte Breite des Bildes ( | + | # $width: enthällt die gewünschte Breite des Bildes (z.B.: 200) |
− | # $height: enthällt die gewünschte Höhe des Bildes ( | + | # $height: enthällt die gewünschte Höhe des Bildes (z.B.: 250) |
# $mode: optionale Angabe der Skallierungsmethode | # $mode: optionale Angabe der Skallierungsmethode | ||
## proportional | ## proportional | ||
Zeile 22: | Zeile 29: | ||
== generateImage() == | == generateImage() == | ||
− | Die Methode generateImage() ist ebenfalls in der Controller.php angesiedelt und erzeugt einen HTML <img> Tag welcher in einem Template ausgegeben werden kann. Diese Methode besitzt 3 Parameter wovon nur der Erste verpflichtend angegeben werden muss. Wird beim Parameter $src kein Pfad angegeben, sondern nur ein Bildname ( | + | Die Methode generateImage() ist ebenfalls in der Controller.php angesiedelt und erzeugt einen HTML <img> Tag welcher in einem Template ausgegeben werden kann. Diese Methode besitzt 3 Parameter wovon nur der Erste verpflichtend angegeben werden muss. Wird beim Parameter $src kein Pfad angegeben, sondern nur ein Bildname (Pfade beginnen immer mit / und sind relativ zum TL_ROOT zu verstehen, Bildnamen nicht) so sucht Contao das Bild im aktuellen Themes Verzeichnis. (i.d.R.: /system/themes/default/images/ sofern kein anderes Backend-Theme gewählt wurde). |
=== Parameter === | === Parameter === | ||
− | # $src: Der Pfad zum Bild welches eingebunden werden soll. ( | + | # $src: Der Pfad zum Bild welches eingebunden werden soll. (hier kann z.B. der Rückgabewert der Methode getImage() verwendet werden) |
− | # $alt: Angabe eines | + | # $alt: Angabe eines Wertes für das alt-Attribut. Dieser ist laut [[w:de:W3C|W3C]] Pflicht und sollte immer angegeben werden. |
− | # $attributes: Angabe | + | # $attributes: Angabe weiterer Attribute für das zu erzeugende <img> Tag. (z.B.: inline [[w:de:CSS|CSS]] via style Attribut, etc.) |
== Codebeispiele == | == Codebeispiele == | ||
− | Mit folgendem Code | + | Mit folgendem Code kann eine neue verkleinerte Version eines Bildes im Cache abgelegt und auf der Seite ausgegeben werden: |
$strReturn = $this->generateImage($this->getImage('tl_files/images/foobar.jpg', 300, 250, 'proportional'), 'my first image'); | $strReturn = $this->generateImage($this->getImage('tl_files/images/foobar.jpg', 300, 250, 'proportional'), 'my first image'); | ||
+ | // nun den Wert an ein Template übergeben. | ||
+ | $this->Template->myFirstImage = $strReturn; |
Version vom 5. Juli 2010, 16:14 Uhr
betrifft | |
---|---|
TYPOlight Version | ab 2.7 |
Contao Version | ab 2.9 |
Das Contao-Framework stellt folgende Methoden für das Arbeiten mit Bildern zur Verfügung:
- generateImage()
- getImage()
Die Original-Daten, welche meistens unter dem Ordner tl_files abgelegt sind werden aufbereitet. Hierzu wird das Bild in der entsprechenden Größe unter system/html abgelegt und auf der Webseite werden nur noch Verweise auf diese erzeugte Kopie ausgegeben.
Inhaltsverzeichnis
[Verbergen]getImage()
Die Methode getImage() ist in der Datei Controller.php angesiedelt und stellt fünf Parameter zur Verfügung, von welchen die ersten drei verpflichtend sind. Die Methode erstellt eine neue Version des Original-Bildes und legt dieses im Cache Verzeichnis /system/html ab. Es wird eine URL zum neuen Bild zurück gegeben. Dieser Rückgabewert wird dann mit der Methode generateImage() (siehe unten) weiter verarbeitet.
Aktuell unterstützt Contao die folgenden Bildformate: jpeg, jpg, png, gif (sofern die installierte Version der glib das jeweilige Format auch bereitstellt).
Parameter
- $image: Enthällt den Pfad zu dem Bild welches bearbeitet werden soll. (BSP: tl_root/images/foobar.jpg)
- $width: enthällt die gewünschte Breite des Bildes (z.B.: 200)
- $height: enthällt die gewünschte Höhe des Bildes (z.B.: 250)
- $mode: optionale Angabe der Skallierungsmethode
- proportional
- box
- $target: // fehlt
generateImage()
Die Methode generateImage() ist ebenfalls in der Controller.php angesiedelt und erzeugt einen HTML <img> Tag welcher in einem Template ausgegeben werden kann. Diese Methode besitzt 3 Parameter wovon nur der Erste verpflichtend angegeben werden muss. Wird beim Parameter $src kein Pfad angegeben, sondern nur ein Bildname (Pfade beginnen immer mit / und sind relativ zum TL_ROOT zu verstehen, Bildnamen nicht) so sucht Contao das Bild im aktuellen Themes Verzeichnis. (i.d.R.: /system/themes/default/images/ sofern kein anderes Backend-Theme gewählt wurde).
Parameter
- $src: Der Pfad zum Bild welches eingebunden werden soll. (hier kann z.B. der Rückgabewert der Methode getImage() verwendet werden)
- $alt: Angabe eines Wertes für das alt-Attribut. Dieser ist laut W3C Pflicht und sollte immer angegeben werden.
- $attributes: Angabe weiterer Attribute für das zu erzeugende <img> Tag. (z.B.: inline CSS via style Attribut, etc.)
Codebeispiele
Mit folgendem Code kann eine neue verkleinerte Version eines Bildes im Cache abgelegt und auf der Seite ausgegeben werden:
$strReturn = $this->generateImage($this->getImage('tl_files/images/foobar.jpg', 300, 250, 'proportional'), 'my first image'); // nun den Wert an ein Template übergeben. $this->Template->myFirstImage = $strReturn;