ACCUEIL > TUTORIAUX SPIP

RÉCUPÉRER LA LARGEUR D'UNE IMAGE, MAIS PAS MOINS D'UNE CERTAINE VALEUR

   

[SPIP 1.8] On souhaite récupérer la largeur d’une image et l’attribuer à un <div>...</div> (qui, lui, pourrait contenir un texte descriptif). L’interface s’adapte ainsi à l’image.

Cela peut se coder ainsi, avec le filtre largeur :

Plus fréquemment, on veut récupérer la valeur de l’image, une fois celle-ci réduite (avec reduire_image. Le traitement de la partie #LOGO_ARTICLE du code devient :

Voici désormais la petite subtilité de cet article : il est possible que l’image réduite, si elle est très verticale (largeur très faible par rapport à la hauteur), ait une largeur insuffisante pour qu’on puisse réellement écrire dans le <div>...</div>. Nous voulons donc la situation suivante :
— si la largeur de l’image est supérieure à 60 pixels, alors on utilise bien cette largeur ;
— si la largeur de l’image est inférieure à 60 pixels, alors on fixe la largeur du bloc à 60 pixels.
Autrement dit : dans tous les cas, la valeur minimale sera 60 pixels.

Ce qui donne :

Si la largeur de l’image réduite est par exemple 75, alors la fonction PHP max{75,60} retournera bien 75. Si la largeur est 45, alors la fonction max{45,60} retournera 60.


Un message, un commentaire ?
  • (Pour créer des paragraphes, laissez simplement des lignes vides.)

Qui êtes-vous ? (optionnel)