Допустим, есть инфоблок, у его элемента - детальное изображение какого-нибудь недопустимо-большого размера, а настройки "создавать картинку анонса из детальной" и "уменьшать, если большая" утрачены. такое бывает при переносе инфоблока через экспорт-импорт xml.
На этот случай есть такой замечательный код (присутствует в компоненте Корзина, например)
if ($arItems["DETAIL_PICTURE"]) { $arFileTmp = CFile::ResizeImageGet( $arItems["DETAIL_PICTURE"], array("width" => "110", "height" =>"110"), BX_RESIZE_IMAGE_PROPORTIONAL, true ); $arItems["DETAIL_PICTURE"] = array( "SRC" => $arFileTmp["src"], 'WIDTH' => $arFileTmp["width"], 'HEIGHT' => $arFileTmp["height"], ); } |
array("width" => "110", "height" =>"110" |
При этом в инфоблоке ничего не меняется, а браузеру отдается уже уменьшенный вариант картинки!
Ссылка скопирована в буфер обмена