Как изменить размер уже загруженного изображения с помощью Magickwand(PHP)/ImageMagick?
-
23-08-2019 - |
Вопрос
Я работаю над созданием галереи, куда пользователь загружает все изображения.Изначально я пытался использовать GD, но обнаружил, что он использует слишком много памяти при работе с изображениями с цифровой камеры.Итак, я изучал ImageMagick и столкнулся с этой проблемой.
Моя конечная цель — изменить размер изображения, а затем загрузить его.Я не уверен, возможно ли это с помощью ImageMagick или нет.Я получил возможность изменить размер изображения после загрузки, но он не сохраняет изображение с измененным размером, а только исходный размер.
Это код, который я сейчас использую:($image — это путь к файлу на моем сервере)
$resource = NewMagickWand();
MagickReadImage($resource,$image);
MagickSetImageCompressionQuality( $resource, 100);
$resource = MagickTransformImage($resource,'0x0','660x500');
Любой вклад будет оценен по достоинству,
Леви
Решение
Ваш код отправит измененное изображение клиенту (веб-браузеру), но не сохранит его на сервере (например, заменив исходное изображение).
Чтобы сохранить изображение, используйте:
MagickWriteImage( $resource, 'new_image.jpg' );