Я нахожусь здесь на блокпосту. У меня есть динамический сайт, где пользователь загружает изображения, и он отображает их на странице. Это все прекрасно и модно, но я уверен, что мы все столкнулись со сценарием, когда изображения не определенного размера могут действительно испортить наше графическое представление, переполняя и выталкивая другие элементы. Итак, мне интересно, есть ли способ, которым вы можете установить определенный размер для изображения (в моем случае высота) и иметь ширину только масштаб, чтобы сохранить пропорции. Я пытался установить атрибут высоты без ширины, но это ничего не отображало (например, ширина была установлена в 0). Любые советы или помощь будет принята с благодарностью.
использование Imagick изменить размер изображения:
<?php
$thumb = new Imagick();
$thumb->readImage('myimage.gif');
$thumb->resizeImage(320,240,Imagick::FILTER_LANCZOS,1);
$thumb->writeImage('mythumb.gif');
$thumb->clear();
$thumb->destroy();
?>
Редактировать: для сохранения соотношения сторон используйте scaleImage, установите значение для измерения, размер которого вы хотите изменить, и 0 для другого измерения, чтобы сохранить соотношение сторон:
$im->scaleImage(0, 300);
Других решений пока нет …