Comment puis-je redimensionner une image déjà téléchargé en utilisant MagickWand (PHP) / ImageMagick?
-
23-08-2019 - |
Question
Je travaille sur la construction de la galerie où les utilisateur télécharge toutes les images. Je l'avais essayé d'utiliser GD à l'origine mais a constaté qu'il a utilisé la mémoire façon trop lorsqu'ils traitent avec des images d'un appareil photo numérique. Alors que je cherchais dans ImageMagick et a couru dans ce problème.
Mon objectif final est de redimensionner l'image, puis le télécharger. Je ne sais pas si cela est possible avec ImageMagick ou non. Je l'ai obtenu pour redimensionner l'image après le téléchargement, mais il ne sauve pas l'image redimensionnée, juste la taille d'origine.
Ceci est le code que je suis actuellement en utilisant: ($ image est le chemin vers le fichier sur mon serveur)
$resource = NewMagickWand();
MagickReadImage($resource,$image);
MagickSetImageCompressionQuality( $resource, 100);
$resource = MagickTransformImage($resource,'0x0','660x500');
Toute entrée serait appréciée,
Levi
La solution
Votre code envoie l'image modifiée au client (le navigateur Web), mais il ne sauvera pas sur le serveur (en remplacement de l'image d'origine, par exemple)
Pour enregistrer l'image, utilisez:
MagickWriteImage( $resource, 'new_image.jpg' );