Manipuler les images avec symfony2 et LiipImagineBundle

LiipImagineBundle est un bundle à la fois très complet et très simple à utiliser pour manipuler vos images dans votre projet Symfony2

Dans beaucoup de projets les images sont redimensionnées lors de l’upload. Mais cela pose un vrai problème lorsque les dimensions définies à l’origine doivent être modifiées. Toutes les miniatures et autres versions de l’image d’origine doivent être corrigées ce qui peut être particulièrement fastidieux si le projet est déjà en production depuis un certain temps.

La solution est donc de générer les miniatures lors de l’affichage, mais pour que cela ne ralentisse pas outrageusement le chargement de vos pages, l’idéal est de créer une gestion du cache de vos miniatures.
C’est ce que propose notamment ce bundle ainsi que de nombreuses autres options permettant de vous simplifier la vie.

Il suffit de définir dans votre fichier de configuration un ou plusieurs « filtres » pour l’affichage de vos images comme ceci:


liip_imagine:
    filter_sets:
        my_thumb:
            quality: 75
            filters:
                thumbnail: { size: [220, 135], mode: inset }

Puis d’appliquer le filtre dans vos templates comme ceci:



<img src="{{ 'chemin/vers/votre/image' | imagine_filter('my_thumb') }}" alt="" />


Voila désormais vous avez une image qui va s’afficher en 220 par 135. Cette miniature a été créée et se trouve dans le dossier « media/cache/my_thumb ».

Le bundle offre beaucoup de liberté et de possibilités de réglages je vous laisse consulter la doc officielle.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *