Hier gebe ich die Transformation an, die mir der Output geben soll – die Magie von Imagick hilft mir dabei. In meiner View rufe ich nun ein Bild mit diesem Aufruf auf:
<?= $asset->getThumbnail('exampleCover')->getHtml(); ?>
Jetzt erhalte ich im Frontend das Bild in der Grösse, wie ich es in der Vorlage definiert habe. Pimcore hat im Hintergrund eine temporäre Bild-Datei erstellt, die den entsprechenden Spezifikationen gleichkommt.
Sie können das Bild auch direkt im Code konfigurieren, indem Sie die gewünschten Transformatoren wie beispielsweise Grösse oder Qualität mitgeben.
<?= $this->image('myImage', [
'title' => 'Drag your image here',
'width' => 200,
'height' => 200,
'thumbnail" => [
'width' => 200,
'height' => 200,
'interlace' => true,
'quality' => 90
]
]); ?>
API-Informationen dazu sind ebenfalls in der Pimcore-Entwickler-Dokumentation zu bekommen. Dort finden Sie auch eine Tabelle mit den verschiedenen Transformations-Möglichkeiten.
Nun haben wir das Bild zwar im richtigen Format, doch kennen wir alle das Problem: Je nach Endgerät und dessen Bildschirm-Auflösung sehen die Bilder unterschiedlich aus. Gerade bei Bildmotiven mit Personen werden oft Köpfe abgeschnitten. Ebenfalls bei Produktfotos sollte der Fokus auf dem Artikel liegen und diesen nicht beschneiden. Lösungen für dieses Problem sind oft kompliziert oder gar nicht innerhalb eines bezahlbaren Budges umzusetzen.
Doch Pimcore wäre nicht Pimcore, hätte es nicht auch hierfür eine komfortable Lösung.