Сегодня я попытался установить imagick в мой xampp сто раз. И я сделал это. Если у вас возникли проблемы, попробуйте выполнить следующие действия:
- Так как xampp является x86, проверьте, является ли ваша магия изображения (программа) x86. Если нет, загрузите последнюю версию здесь: imagemagick.org/script/binary-releases.php#windows
Пожалуйста, помните, что u ДОЛЖЕН загрузить
Win32 dynamic at 16 bits-per-pixel. - Установить изображение Магия в
C:\imagemagick. - Загрузите последнюю стабильную версию imagick здесь:. Вы ДОЛЖНЫ загрузить
5.x Thread Safe (TS) x86. X в 5.x - это версия вашего PHP. - Поместите
php_imagick.dllв папку php/ext вашей установки xampp. - Добавьте это в свой php.ini:
extension=php_imagick.dll - Вот когда у меня много неприятностей. Если вы попытаетесь запустить сервер (или записать
phpв консоли (start- > cmd)), вы получите сообщение об ошибке. Если эта ошибка говорит примерно так:Unable to find the entry point for the procedure FlattenImages in the DLL CORE_RL_magick.dllэто означает, что вы все в порядке. - Теперь вы должны войти в папку установки Image Magick и перезаписать загруженную DLL с помощью
php_imagick.dll. Все они начинаются с префиксаCORE_RL_. - Как только вы их перезапишете, вы можете попробовать написать
phpв консоли Windows. Если не сказать что-то, значит, что функция imagick функциональна (вы можете проверитьlocalhost/xampp/ > phpinfo() link. Лично мне пришлось установить новую DLL:vcomp110.dll. Если у кого-то такая же ошибка, как у меня (система не может найтиvcomp11.dd) скачать ее здесь
Теперь, если вы попробуете выпустить php на консоли или просто инициализировать модуль apache xampp, у вас не должно быть ошибок.
До свидания и надеюсь, что смогу помочь кому-то.
EDIT: при попытке convert some-img.bmp some-result.jpg в консоли у меня была эта ошибка:
convert.exe: unable to open module file 'C:\Users\my-acc\.magick\IM_MOD_RL_BMP_.dll': No such file or directory @ ...
Это произойдет, если в my-acc нет папки .magick. Вам нужно сделать следующее:
-
Создайте папку с именем
.magickв папкеmy-acc. Поскольку имя начинается с остановки, вам нужно создать его через консоль. Вот команды:1,1.
c:1,2.
cd Users\my-acc1,3.
mkdir .magick - Перейдите в
C:\imagemagick\modules\codersи скопируйте все файлы в последнюю созданную папку.
Теперь вы сможете использовать Image Magick через команды или классы PHP.
В фоновом режиме, если вы используете Codeigniter, я не знаю, как использовать image_lib с imagick. Итак, это лучше с собственными классами воображения. Вот простой пример:
$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();