Изменение размера изображений

Очень часто, практически повсеместно приходится изменять размеры изображений, будь то в каталоге товаров или новостях.
В стандарте битрикса есть функция для изменения размеров изображения:


где:
$pic_id — ид-картинки (например $arResult[«PREVIEW_PICTURE»][«ID»] ),
$NEW_WIDTH, $NEW_HEIGHT — новые размеры картинки,
$FLAG — флаг как картинку обработать: BX_RESIZE_IMAGE_PROPORTIONAL или BX_RESIZE_IMAGE_EXACT,
$is_get_new_sizes — true, если надо чтобы результат содержал размеры новой картинки (после ее масштабирования), особенно актуально для PROPORTIONAL.

По поводу способов обработки:
BX_RESIZE_IMAGE_PROPORTIONAL — картинка (если она больше по размерам) пропорционально вмещается в заданную область, притом целиком, обрезки никакой не происходит;
BX_RESIZE_IMAGE_EXACT — картинка (если она больше по размерам) полностью заполняет заданную область, позиционируясь по центру области своим центром картинка сжимается до тех пор пока одна из границ достигнет границ области, затем края другой границы обрезаются.

Т.е. если картинка исходная прямоугольник, а вам нужен именно квадрат — то юзать надо EXACT (хоть и будет обрезка, но будет именно квадрат).
А если надо чтобы просто картинка уместилась в заданную область, то достаточно заюзать PROPORTIONAL, получится прямоугольник со сторонами не большими чем у заданного квадрата. (что еще следует заметить, прямоугольник не центруется по центру квадрата, и отображение именно по центру квадрата придется делать средствами html+css)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *