Arbeiten mit Bildern

Aus Contao Community Documentation


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:

  1. generateImage()
  2. getImage()

Der generelle Ablaub beim Arbeiten mit Bildern ist folgender. Man hat die Original-Daten welche meistens unter dem Ordner tl_files abgelegt sind. Im nächsten Schritt werden die Originaldaten aufbereitet, dass heißt das Bild wird in der entsprechenden GRöße unter system/html abgelegt und von dort aus auf der Webseite ausgegeben.

getImage()

Die Methode getImage() ist in der Controller.php angesiedelt und besitzt 5 Parameter wovon die ersten drei Parameter 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 weiter verarbeitet. Aktuell unterstützt Contao die folgenden Bildformate: jpeg, jpg, png, gif

Parameter

  1. $image: Enthällt den Pfad zu dem Bild welches bearbeitet werden soll. (BSP: tl_root/images/foobar.jpg)
  2. $width: enthällt die gewünschte Breite des Bildes (BSP: 200)
  3. $height: enthällt die gewünschte Höhe des Bildes (BSP: 250)
  4. $mode: optionale Angabe der Skallierungsmethode
    1. proportional
    2. box
  5. $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 (Pdafe beginnen immer mir /, Bildnamen nicht) so sucht Contao das Bild im aktuellen Themes Verzeichnis. (BSP: system/themes/default/images/)

Parameter

  1. $src: Der Pfad zum Bild welches eingebunden werden soll. (BSP: hier kann der Rückgabewert der Methode getImage() verwendet werden)
  2. $alt: Angabe eines ALT-Wertes. Dieser ist laut W3C Pflicht und sollte immer angegeben werden.
  3. $attributes: Angabe aller weiteren zusätzlichen <img> Attribute. (BSP: inline CSS, ...)

Codebeispiele

Mit folgendem Code können Sie eine neue verkleinerte Version eines Bildes im Cache ablegen und auf der Seite ausgeben lassen:

$strReturn = $this->generateImage($this->getImage('tl_files/images/foobar.jpg', 300, 250, 'proportional'), 'my first image');
Ansichten
Meine Werkzeuge

Contao Community Documentation

Nein, der Hangout ist noch nicht vorbei, wir schweigen nur. Es heisst ja auch hangout und nicht bryll out.

Christian Schiffler
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge