SPIP

[ar] [ast] [bg] [br] [ca] [co] [cpf] [cs] [da] [de] [en] [eo] [es] [eu] [fa] [fon] [fr] [gl] [id] [it] [ja] [lb] [nl] [oc] [pl] [pt] [ro] [ru] [sk] [sv] [tr] [vi] [zh] Espace de traduction

Télécharger

Le traitement des images

via GD, GD2 ou Imagemagick

Avril 2005 — mis à jour le : Décembre 2007

Toutes les versions de cet article :

SPIP permet d’utiliser les systèmes de traitement d’images installés sur votre site d’hébergement. Introduites dans la version 1.7, ces fonctions de SPIP sont complétées et plus puissantes.


SPIP utilise le traitement d’images de trois manières différentes :

— la création de vignettes de prévisualition pour les images installées comme « documents joints » ; cela était déjà présent dans la version 1.7 ; [SPIP 1.8] permet de plus, dans ces « portfolios », de faire subir à chaque image une rotation à 90° (cela est particulièrement intéressant lorsqu’on installe une série de photographies depuis un appareil photo numérique) ;

— à de nombreux endroits dans l’espace privé, l’affichage de « vignettes » destinées à illustrer la navigation, à partir des logos des articles, des rubriques et même des auteurs (par exemple, si l’on dote les participants à un site de logos d’auteurs, des vignettes de ces logos accompagneront tous les messages de ces auteurs dans les forums de l’espace privé) ;

— dans les squelettes, les webmestres disposent d’une fonction image_reduire particulièrement utile pour contrôler sa mise en page, et créer différentes versions (de différentes tailles) d’une même image. Nous ne pouvons qu’encourager les webmestres à « jouer » avec cette fonction pour enrichir et contrôler leur interface graphique ; on en tirera avantage pour obtenir :

  • des alignements d’images parfaits (par exemple : toutes les images de la même largeur), sans s’obliger à installer des images de dimensions prédéfinies ;
  • la garantie de ne pas faire « exploser » sa mise en page lorsqu’une image trop grande est installée par un rédacteur,
  • des effets de survol et d’animation réalisés simplement en utilisant la même image à des tailles différentes (sans devoir jouer avec les « logos de survol »),
  • des interfaces de portfolios (galeries de photos) épatantes...

Choix du système de traitement d’images

Mais, pour réaliser ces opérations de traitement d’images, SPIP fait appel à des systèmes qui ne peuvent pas être installés automatiquement avec SPIP, mais doivent être présents sur le serveur qui héberge votre site. Il faut donc que ces systèmes soient présents en plus de SPIP (dit autrement : il ne suffit pas que SPIP soit installé pour que les fonctions de traitement d’images soient disponibles ; il faut en fait que ces fonctions soient présentes par ailleurs).

Le choix d’un système de traitement d’images se fait dans la partie « Configuration » (configuration avancée) de l’espace privé. SPIP permet de choisir parmi 5 méthodes différentes de traitement des images.

Imagemagick

Imagemagick en tant qu’extension de PHP (php-imagick) est le choix privilégié par SPIP. SPIP est capable de déterminer seul sa présence. Si Imagemagick est présent sur votre serveur, alors SPIP l’utilisera automatiquement.

Si Imagemagick n’est pas présent sur votre serveur, alors SPIP vous proposera de choisir parmi d’autres méthodes. Ces méthodes n’étant pas détectables par SPIP (et, en tout cas, pas parfaitement), une vignette vous est proposée pour chaque méthode ou, éventuellement, pas de vignette si la méthode ne fonctionne pas sur votre site. Vous êtes alors invité à sélectionner votre méthode préférée (parfois : sélectionner la seule réellement disponible !).

GD, GD2

GD (et sa version 2, nettement plus puissante) est une extension de PHP désormais fréquemment présente sur les serveurs, y compris les hébergeurs mutualisés.

Si GD2 est présente, vous pouvez l’utiliser, elle donne des résultats de bonne qualité.

En revanche, GD (comprendre : « version 1 de GD ») est proposée comme pis-aller : le traitement des images se fait en 256 couleurs, et introduit de fortes dégradation des images ; elle n’est donc à sélectionner que si aucune autre méthode ne fonctionne sur votre site.

Imagemagick par convert

Convert est le logiciel en ligne de commande de Imagemagick. La qualité est absolument épatante, cependant son installation est relativement complexe.

Une fois convert installé sur votre site, vous devez configurer le chemin d’accès dans mes_options.php3 (il s’agit d’un appel en ligne de commande) par la variable suivante :

Il convient ici d’indiquer le chemin complet d’accès au programme. Sous Linux, ce chemin est souvent

sous MacOS X, s’il est installé avec Fink :

(ces valeurs sont fournies à titre indicatif ; comme tout programme, il peut être installé quasiment n’importe où...).

NetPBM

Cette méthode consiste en trois programmes, déjà anciens, qui permettent de réaliser le redimensionnement de l’image. L’avantage de cette méthode est que ces programmes peuvent être installés sans accès root sur la plupart des hébergements.

On trouvera, sur le site du logiciel gallery, une explication claire et des versions précompilées de NetPBM.

Dans SPIP, on configure le chemin d’accès à pnmscale (l’un seulement des trois programmes installés - les deux autres chemins s’en déduiront, puisque les programmes sont installés dans le même répertoire) par la variable suivante :

(encore une fois, c’est-à-vous de déterminer le chemin d’accès réel de votre installation).

* *

Pour rappel, vous pouvez obtenir nombre d’informations utiles sur votre système via la page /ecrire/ ?exec=info, notamment :
— le système utilisé (utile pour installer NetPBM précompilé) ;
— la version de PHP ;
— la présence éventuelle des extensions GD, GD2 et Imagemagick.

Enfin, en cas de difficulté, la meilleure solution consiste à contacter votre hébergeur pour qu’il installe les extensions nécessaires si aucune n’est présente. La présence d’au moins une extension graphique de PHP est désormais une norme chez les hébergeurs, n’hésitez pas à demander leur installation pour en bénéficier sur votre site.


Voir le squelette de cette page Site réalisé avec SPIP | Espace de traduction | Espace privé