Sources:
composer require liip/imagine-bundle
Un fichier de configuration est ajouté :
liip_imagine: # valid drivers options include "gd" or "gmagick" or "imagick" driver: "gd"
Si on utilise le driver “gd”
comme indiqué ci-dessus, l'extension php-gd doit être installée.
sudo apt install php-gd sudo systemctl restart apache2
Ajouter des filtres :
liip_imagine: driver: "gd" filter_sets: # filtre nommé "miniature200x200" miniature200x200: quality: 75 filters: thumbnail: size: [200, 200] mode: outbound # filtre nommé "image_article" image_article: quality: 80 filters: upscale: min: [800, 400] thumbnail: size: [800, 400] mode: outbound
Le fichier image est stocké dans le dossier public
Chemin de l'image |
---|
/public/img/photo.jpg |
Dans un template twig, on accède à l'image comme ceci :
<img src="{{ asset('img/photo.jpg') }}" >
Pour y ajouter le filtre miniature200x200
défini dans l'exemple ci-dessus :
<img src="{{ asset('img/photo.jpg') | imagine_filter('miniature200x200') }}" >
L'image est mise en cache, dans un dossier /public/media/cache
créé automatiquement.
Le chemin complet de l'image est :
/public/media/cache/NOM-DU-FILTRE/CHEMIN-DE-L'IMAGE
Donc pour reprendre l'exemple ci-dessus, cela donne :
/public/media/cache/miniature200x200/img/photo.jpg