Arbeiten mit Bildern: Unterschied zwischen den Versionen

Aus Contao Community Documentation

(Die Seite wurde neu angelegt: „Category:Dev HOWTOS Category:Dev Snippets {{AppliesTo|TLVersion=ab 2.7|Version=ab 2.9}} Das Contao-Framework stellt folgende Methoden für das Arbeiten m…“)
 
(Codebeispiele)
Zeile 31: Zeile 31:
 
== Codebeispiele ==
 
== Codebeispiele ==
 
Mit folgendem Code können Sie eine neue verkleinerte Version eines Bildes im Cache ablegen und auf der Seite ausgeben lassen:
 
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');
+
$strReturn = $this->generateImage($this->getImage('tl_files/images/foobar.jpg', 300, 250, 'proportional'), 'my first image');

Version vom 5. Juli 2010, 13:58 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:

  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

<TheTril> Stateless Template, Stateless Elements, Stateless Renderer :)
<TheTril> everything is stateles :D
<leo-unglaub> TheTril: genau wie Ed Snowden *g*

Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge