J’ai commencé un nouveau #plugin pour #SPIP : centre_image
►http://zone.spip.org/trac/spip-zone/browser/_plugins_/centre_image
Après installation (PHP 5 au minimum : on a besoin de la fonction image_filter
), on se retrouve avec 3 filtres qui s’appliquent à des images :
– centre_image($fichier)
retourne un tableau array{x,y}
du centre d’intérêt de l’image,
– centre_image_x($fichier)
et centre_image_y($fichier)
sont plus directement utilisables dans les squelettes, puisqu’ils retournent indépendamment la valeur x
et la valeur y
de la fonction précédente.
x
et y
sont des valeurs entre 0 et 1 (x à 0 à gauche, 1 à droite ; y à 0 en haut, 1 en bas), qui donnent les coordonnées du « point d’intérêt » de l’image, calculé automatiquement sur le principe de l’« entropie ».
Quelques éclaircissements :
– un problème classique quand on recarde une image automatiquement, c’est que selon la nature de l’image, on n’obtient pas un recadrage pertinent (têtes coupées parce qu’on a visé trop bas, statue hors cadre parce qu’on a coupé au centre…) ; du coup, je viens déjà d’introduire un réglage automatique dans la fonction image_proportions
livrée dans le plugin image_responsive (version 5.0 à l’instant) :
``image_proportions($img, 16, 9, "focus")
``
là où l’on pouvait déjà indiquer top
, left
… si on indique focus
, alors l’image sera recadrée en fonction du résultat du nouveau plugin ;
– une difficulté que je veux régler, c’est l’utilisation de grandes images en fond de page : quand on écrit la tritraille dessus, on fait dans le systématique, et du coup ce n’est pas forcément le plus heureux ; avec ce plugin, on peut décider que si le point d’intérêt de l’image est à gauche, alors on installera la titraille à droite sur l’image (et inversement) ;
– une orientation que je veux développer pour le plugin image_responsive (d’où le passage en version 5) : faciliter et automatiser la « direction artistique », c’est-à-dire la possibilité d’afficher une version zommée sur le point d’intérêt de l’image quand on l’affiche en petit ; si je connais le « point d’intérêt » avec l’autre plugin, une partie du boulot est déjà fait…
– le gros hic, c’est que la méthode fonctionne couci-couça (mais vu le but, je pense que c’est très acceptable : avant on coupait ou on plaçait les éléments carrément au pif)… la prochaine étape du développement va consister à donner des outils pour que le webmestre puisse, d’un clic, « forcer » le placement du point d’intérêt.