juniorcoder
@juniorcoder
Ура, у нас новый умный AI...

Как сделать ресайз изображения в Битрикс?

Создаю совсем новой свойство CONSULTANT_FOTO как его вывести и отресайзить?
Вывести получилось а вот ресайз сделать уже не получается.
<? $file_path = CFile::GetPath($arResult['DISPLAY_PROPERTIES']['CONSULTANT_FOTO']['VALUE']); ?>
<img src="<?= $file_path ?>" width="247px" height="auto"/>
  • Вопрос задан
  • 1043 просмотра
Решения вопроса 1
ferym
@ferym
Web-Developer
Если ресайзить на лету и кэшировать уменьшенную картинку (повторно уже из кэша отдаёт), то попробуйте воспользоваться классом CFile::ResizeImageGet

Теоретически должен примерно такой код заработать (если CONSULNANT_FOTO это свойство типа "файл", а не строка):
<?
$wsize = 100; // новая ширина 100 пикселей
$hsize = 100; // новая высота 100 пикселей
$file_path = CFile::ResizeImageGet(
        $arResult['DISPLAY_PROPERTIES']['CONSULTANT_FOTO']['VALUE'], // ID файла 
        Array("width" => $wsize, "height" => $hsize),
        BX_RESIZE_IMAGE_EXACT, // тип масштабирования, подробнее в документации по ссылке выше
        false);
?>
<img src="<?=$file_path['src']?>" width="<?=$wsize?>" height="auto"/>

Размеры под себя в переменных остаётся настроить и возможно поэкспериментировать с типом масштабирования.

P.S. спойлер
Код не тестил, прямо тут набрал, но должен без ошибок заработать. Если что - пиши в телеграм, помогу....
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Umr001
@Umr001
php
cfile:resizeImaget
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы