web-dev-qa-db-fra.com

Comment installer imagick dans xampp/wamp dans Windows

Aujourd'hui, j'ai essayé d'installer imagick dans mon xampp une centaine de fois. Et je l'ai fait. Si vous avez des problèmes, veuillez suivre ces étapes:

  1. Puisque xampp est x86, vérifiez si votre Image Magick (le programme) est x86. Sinon, téléchargez la dernière version ici: imagemagick.org/script/binary-releases.php#windows N'oubliez pas que vous DEVEZ télécharger le Win32 dynamic at 16 bits-per-pixel.
  2. Installez Image Magick à C:\imagemagick.
  3. Téléchargez la dernière version stable de imagick ici: . Vous DEVEZ télécharger la 5.x Thread Safe (TS) x86. Le x dans 5.x est la version de votre PHP.
  4. Placez le php_imagick.dll dans le dossier php/ext de votre installation xampp.
  5. Ajoutez ceci dans votre php.ini: extension=php_imagick.dll
  6. Voici quand j'ai beaucoup de problèmes. Si vous essayez de démarrer le serveur (ou d'écrire php dans la console (start-> cmd)), vous obtiendrez une erreur. Si cette erreur dit quelque chose comme ceci: Unable to find the entry point for the procedure FlattenImages in the DLL CORE_RL_magick.dll, cela signifie que vous êtes en bonne voie.
  7. Maintenant, vous devez aller dans le dossier d'installation de Image Magick et écraser le DLL que vous avez téléchargé avec le php_imagick.dll. Ils commencent tous par le préfixe CORE_RL_.
  8. Une fois que vous avez tout écrasé, vous pouvez essayer d'écrire php dans la console Windows. Si vous ne dites pas quelque chose, cela signifie que l’imagick est fonctionnel (vous pouvez archiver localhost/xampp/ > phpinfo() link. Personnellement, j’ai dû installer une nouvelle DLL: vcomp110.dll. Si quelqu'un a la même erreur que moi (le système n’a pas trouvé le vcomp11.dd) Télécharger les ici

Maintenant, si vous essayez d'exécuter php sur la console ou d'initialiser le module Apache de xampp, vous ne devriez pas avoir d'erreur.

Au revoir et j'espère pouvoir aider quelqu'un.

EDIT: lorsqu’on a essayé de convert some-img.bmp some-result.jpg dans la console, j’ai eu l’erreur suivante: convert.exe: unable to open module file 'C:\Users\my-acc\.magick\IM_MOD_RL_BMP_.dll': No such file or directory @ ... Ceci se produit quand il n’ya pas de dossier .magick dans my-acc. La chose que vous devez faire est la suivante:

  1. Créez un dossier nommé .magick dans le dossier my-acc. Comme le nom commence par un arrêt, vous devez le créer via la console. Voici les commandes:

    1.1. c:

    1.2. cd Users\my-acc

    1.3. mkdir .magick

  2. Allez à C:\imagemagick\modules\coders et copiez tous les fichiers dans le dernier dossier créé.

Maintenant, vous pourrez utiliser Image Magick avec les commandes ou les classes PHP.

Sur le fond, si vous utilisez Codeigniter, je ne sais pas comment utiliser image_lib avec imagick. Donc, c'est mieux avec les propres classes d'imagick. Voici un exemple simple:

$image = new Imagick($upload_data['full_path']);
$image->thumbnailImage(250,0);
if($image->writeImage($upload_data['file_path'].$upload_data['raw_name'].'_thumb'.$upload_data['file_ext'])){
    something here;
}
$image->clear();
26
Luciano Graziani

Cette réponse est peut-être extrêmement naïve, mais j’ai trouvé que faire des choses dans Windows est généralement trop pénible. De nombreuses personnes sont d'accord avec cela et ont trouvé du réconfort dans un outil appelé "chocolaté".

Tout d’abord, installez Chocolatey sur votre ordinateur Windows (instructions d’installation extrêmement simples):

https://chocolatey.org/

Ensuite, utilisez chocolatey pour installer tout ce dont vous avez besoin (imagemagick dans ce cas):

https://chocolatey.org/packages/imagemagick

Je suppose que vous devrez peut-être apporter quelques modifications mineures aux fichiers de configuration, et gérer toutes les "autorisations Windows" nécessaires au bon fonctionnement de votre système. Les autorisations peuvent être aussi simples (et pas nécessairement sûres) que le "contrôle total" pour certains utilisateurs, en plus d'activer l'héritage et de remplacer les paramètres de tous les enfants afin qu'ils utilisent l'héritage.

En bref, installer, configurer, autorisations, allez.

PS. Cette réponse pourrait être incomplète/prototypique/expérimentale, car je n'exécute pas codeigniter, php, imagemagick sous Windows.

3
starlocke

Ce tutoriel sur Winderfind est merveilleux, mais pour moi, ce n’était pas encore terminé de résoudre tous les problèmes. Tout d’abord, jetez un coup d’œil à ce tutoriel: http://hrt0kmt.hatenablog.com/entry/2015/05/27/170608

Deuxièmement, j'ai découvert que toutes les versions d'ImageMagick ne fonctionneraient pas avec toutes les versions de php_imagick.dll. Consultez mes réponses et d’autres sur ce post pour plus de dépannage: Formats pris en charge par ImageMagick sans valeur

0
Jorr.it