Markdown документация, база знаний

События

Все примеры рабочие. Разместить обработчик события нужно в файле /bitrix/php_interface/init.php или /local/php_interface/init.php.

onResizeImage

Событие onResizeImage позволяет масштабировать картинки в процессе их вывода под свои нужды. Это может потребоваться в случаях большого количества картинок на странице или больших размеров картинок — вывести маленькие превью, при клике по которым откроется большая картинка.

Также это позволяет на лету подменить картинки, если это необходимо, и т.д.

$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler("bxmaker.mdbase", "onResizeImage", "onResizeImage");

function onResizeImage(\Bitrix\Main\Event $event) {
    $arParams = $event->getParameter('arParams');
    $img = \CFile::ResizeImageGet($event->getParameter('arFile'), array(
        'width' => 200, 'height' => 100
    ), BX_RESIZE_IMAGE_PROPORTIONAL);

    $result = new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, array(
        'resizedUrl' => $img['src']
    ));
    return $result;
}