Бот-информер доступности сайта   •   Магазин расширений
294 просм
0 комм
Поделиться:

ResizeImageGet: быстрое создание превью (ресайз) изображений в Bitrix

Превью – это уменьшенное изображение оригинала, созданное с целью уменьшения его веса и общего веса страницы в целом, которое, в свою очередь, помогает нам значительно увеличить скорость загрузки сайта.

Создание превью мы уже рассматривали в CMS WordPress, а теперь похожее постараемся реализовать и в Bitrix.

Итак, в Bitrix существует метод «ResizeImageGet», с помощью которого и можно реализовать ресайз изображений. Пример использования следующий:

<?php

	$res_images = CFile::ResizeImageGet($arItem["PREVIEW_PICTURE"], Array("width" => ШИРИНА, "height" => ВЫСОТА), BX_RESIZE_IMAGE_EXACT, false);
    
	echo '<img src="'.$res_images["src"].'" alt="'.$arItem["NAME"].'"/>';
	
?> 

Что здесь что?

1. Позиции «ШИРИНА» и «ВЫСОТА» вы заменяете на числа (размер вашего будущего изображения в пикселях), например, «300» и «450» соответственно.

2. «BX_RESIZE_IMAGE_EXACT» – один из параметров масштабирования изображения. Допустимые значения:

  1. BX_RESIZE_IMAGE_EXACT – подгонка размера с сохранением пропорций под указанные параметры с обрезанием лишнего.
  2. BX_RESIZE_IMAGE_PROPORTIONAL – подгонка размера с сохранением пропорций. Размер ограничивается указанными параметрами.
  3. BX_RESIZE_IMAGE_PROPORTIONAL_ALT – подгонка размера с сохранением пропорций, за основу при этом берется максимальное значение из высоты/ширины. Размер также ограничивается указанными параметрами. Отлично подходит под обработку вертикальных картинок.

3. «false» – возвращать ли массив с данными о размерах измененного изображения. Допустимые значения:

  1. false – нет.
  2. true – да.

Код вы используете в нужном месте компонента. Обратите внимание, чтобы часть «$arItem["PREVIEW_PICTURE"]» возвращала вам данные об изображении. Проверяйте этот момент через «var_dump».

Все превью изображений при такой конструкции будут создаваться автоматически, и храниться они будут в папке /upload/resize_images/.

0
комментарий
Оставить комментарий:
Нажимая кнопку «Отправить» вы даете согласие на обработку своих персональных данных.
Ваше Имя
Ваш E-mail
Текст комментария