Как изменить размер уже загруженного изображения с помощью Magickwand(PHP)/ImageMagick?

StackOverflow https://stackoverflow.com/questions/717668

  •  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' ); 
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top