Besoin de manipuler des images en PHP ? Bonne nouvelle ! Le BlogDuWebdesign vous propose une liste de ressources vous permettant de remplir cette tache de manière efficace sans se prendre la tete avec la syntaxe de GD et Imagemagick !

Image

Image est une toute jeune bibliothèque de manipulation d'images pleine de points positifs.

En plus d'une vitesse de travail plus que raisonnable et une charge serveur tout à fait acceptable, son gros point fort est sa syntaxe très clair et agréable à manipuler, comme vous pouvez le voir dans l'exemple suivant.

Image::load('example.jpg')
    ->sepia()
    ->blur(50)
    ->save();
Les méthodes sont clairs et chainable, ce qui fait que toute personne tombant sur votre code sera capable de le comprendre, même sans connaitre la bibliothèque, ce qui est vraiment un bon point. Son gros point "négatif" est évidemment sa jeunesse, et le fait que son futur est imprévisible. À surveiller, donc.

Imageflow

Imageflow est un projet assez particulier dans le sens ou il a été Kickstarte il y a quelques mois (à hauteur de 62 000 dollars, tout de même !).

Trouvez un webdesigner disponible

Trouvez gratuitement le prochain talent qui réalisera votre projet ou rejoindra votre équipe.

Loin d'être une library permettant de se connecter a GD ou Imagemagick, son objectif est des fournir une library de manipulation d'image adressant la plupart des reproches que l'on fait à Imagemagick. Ce projet couvre donc bien plus de langage que simplement PHP.

Le projet n'est pas vraiment en version finale, et il faut être prudent avant de l'utiliser en production, mais il reste néanmoins particulièrement intéressant sur de très nombreux points (api accessible a travers http et ffi, centré sur un usage "web" et mettant la sécurité en avant, …)

Intervention Image

Intervention image est LA library de cette liste que je vous recommande pour l'instant. Bien que moins intéressante que les deux précédentes en matière de specs et api, elle a l'avantage d'être sur le marché depuis quelques années déjà, est mien soutenue, bien teste, bref on peut lui faire confiance.

Sans etre aussi agreable que celle d'image, sa syntaxe est loin d'être insoutenable et reste agréable a utiliser, comme vous pouvez le voir sur l'exemple suivant, et cette ressource possède l'avantage d'avoir une documentation très compréhensible.

// open an image file
$img = Image::make('public/foo.jpg');

// resize image instance
$img->resize(320, 240);

// insert a watermark
$img->insert('public/watermark.png');

// save image in desired format
$img->save('public/bar.jpg');

Zebra image

Zebra est sans aucun doute la library la moins puissante de cette liste, mais elle possède une particularité très intéressante : elle n'est constituée en tout et pour tout d'un seul petit fichier PHP.

Cette library est donc intéressante pour réduire aux maximums ses dépendances ou dans un but pédagogique, permettant de fournir un code d'exemple pour travailler avec GD.