Масштабирование изображения с последующим его сохранением в 1С-Битрикс
Скрипт находит все файлы изображений загруженные в 1С-Битрикс, меняет размер и обновляет в базе:
// проверяем тип и размер файла.
$checkfile = CFile::CheckFile($arFile, 400000, "image/", "gif,png,jpeg,jpg");
if(strlen($checkfile) > 0) {
$strError .= $arFile["name"] . ": " . $strError . "<br>";
} else {
// масштабируем изображение
CAllFile::ResizeImage(
&$arFile, // путь к изображению, сюда же будет записан уменьшенный файл
[
"width" => $newWidth, // новая ширина
"height" => $newHeight // новая высота
],
BX_RESIZE_IMAGE_EXACT // метод масштабирования. обрезать прямоугольник без учета пропорций
);
// сохраняем уменьшенное изображение.
$fileId = CFile::SaveFile($arFile, $IBlockType);
}
Источник: https://dev.1c-bitrix.ru/api_help/main/reference/cfile/resizeimage.php