Как сделать ресайз изображения или почему он может не работать?
Сделать ресайз или обрезку изображения можно примерно следующим образом:
<? $file = CFile::ResizeImageGet($arItem["PREVIEW_PICTURE"], array('width'=>200, 'height'=>200), BX_RESIZE_IMAGE_EXACT, false); ?>
<img src="<?=$file['src']?>" alt="" />
Здесь наибольший интерес вызывает третий параметр, в зависимости от значения которого и будет выбран метод обрезки:
- BX_RESIZE_IMAGE_EXACT - на выходе получается картинка с заданными размерами. При этом всё, что не влезает - обрезается;
- BX_RESIZE_IMAGE_PROPORTIONAL - масштабирование с сохранением пропорций. При этом та часть изображения, которая не влезла в заданные размеры, будет обрезана;
- BX_RESIZE_IMAGE_PROPORTIONAL_ALT - аналогично предыдущему, но адаптировано для вертикальных картинок.
Если по какой-то причине, обрезка не сработала, то надо убедиться в том, что на вход первым параметром передаётся ID картинки или массив вида $arItem["PREVIEW_PICTURE"].
Вы должны авторизоваться, чтобы оставлять комментарии.
Комментарии ()