Ajuster le comportement de la création des miniatures

Le moteur exploite une class centralisée pour manipuler et construire les images (miniatures). Cette class appartient au dossier commun (common), elle est donc centralisée entre le backoffice et le front office.

Les besoins de l’espace public étant divers, plusieurs options sont possibles afin d’ajuster le comportement de la class.

Ces options sont disponibles à partir de la version 2.1.1.

Ratio des dimension de l’image

Par défaut, lors de la création d’une miniature, les proportions de l’image source sont préservées, et l’ensemble redimensionné. Il peut être nécessaire de retailler les images sur un autre format, carré par exemple. Un driver pour la class image_ratio est disponible, afin de modifier le calcul des dimensions et proportions de l’image à traiter.

Pour exploiter un driver de la class image, il faut placer (dans le template) l’appel au driver souhaité. Dans notre exemple, le driver ce nomme « Carre », ce qui nous donne:

 <?php /** Force image carré */ image_ratio::SetModele(‘Carre’); ?>

A placer juste avant l’appel à tep_image() ou get_image(). Le driver Carre est fourni par défaut dans osCSS.

L’appel à un driver est ponctuel, aussi, il doit être appelé avant chaque appel à tep_image.

Watermark

La class supporte aussi le fait d’ajouter du texte par dessus l’image, pour protéger celle ci de la copie. Une option est disponible dans la configuration (voir image) permettant d’ajouter le texte à utiliser.

A partir du moment ou un contenu existe dans la configuration de la boutique, le watermak est actif, et sera appliqué à toute les nouvelles images créées.

Vous pouvez avoir besoin de désactiver cette fonctionnalité (images fabricants, catégories) ;

Utiliser le code comme suit avant l’appel des images qui ne doivent pas contenir le watermark :

 <?php /** Force image sans watermark */ image_ratio::SetWatermark(false); ?>

Pour réactiver le watermark, ou pour imposer sont utilisation, utiliser cet appel:

 <?php /** Force image  watermark */ image_ratio::SetWatermark(); ?>

Noter que le watermark ne fonctionne pas comme l’appel des drivers, à partir du moment où celui ci est actif, il est utilisé systématiquement sur toutes les images.

Note : Lors de l’appel a SetWatermark(), une image sera mise en cache, dans tous les cas. Même dans le cas d’une image ne nécessitant pas de redimensionnement. Cette usage assure le fait de pouvoir appliquer le watermark à toutes les images.

Créer un module driver pour les images

La class image_ratio ne nécessite pas de driver pour fonctionner, et l’utilisation de l’un d’eux est complément optionnel. L’ensemble des méthodes est donc présent dans la class image_ratio. D’autre part le driver Carre, est disponible et peut servir de modèle.

Tous les drivers sont nécessairement une class extends de la class principale .

Liste des méthodes pouvant être remplacée par les drivers :

  • watermarkImage
  • aspectratio
  • thumbfile
  • thumbgd

Laisser un commentaire

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