Меню
RSS
Изменить размер картинок на лету в битрикс
 
Изменить размер картинок на лету в битрикс

Встала задачка, на собственном сайте, уменьшить размер превьюшек картинок у анонсов раздела дизайн. Само собой перезаливать все картинки и лень и долго и глупо. Можно воспользоваться стандартной функцией битрикс CFile::ResizeImage и изменить размеры картинок на лету
 
Здравствуйте Михаил! а есть у Вас решение сделать в bitrix увеличить фото по клику, как на официальном сайте bitrix  
Изменено: Михаил Базаров - 11.03.2025 10:19:29
 
Просто подключите любой плагин, типа fancybox, и сверстайте под ваш дизайн. Тут особо и делать нечего
Изменено: Михаил Базаров - 11.03.2025 10:19:19
 
А подскажите как убрать ресайз картинок у товаров в корзине??
что только не пробовал..
в корзине путь к картинки идет - /upload/resize_cache/iblock/e72/110_110_1/e725ae01607c4b21b1­4ffec17cc92c26.jpg
в детальной карточке - /upload/iblock/e7b/e7bc22e91cd29476877ec0137f9adc0d.jpg - нет /resize_cache/

нужно сделать везде как в карточки.
 
Здравствуйте, Михаил, создание превью изображений этой функцией. Но получаемые превью оказываются с артефактами - белый цвет иногда заменяется соседним f4f4f4, из-за этого картинка становится неяркой.
Код
$arFile = CFile::GetFileArray($arItem['PREVIEW_PICTURE']['ID'];
    $imgWidth = $imgHeight = 260;
    $arrImage = CFile::ResizeImageGet(
        $arFile,
        array("width" => $imgWidth, "height" => $imgHeight),
        BX_RESIZE_IMAGE_EXACT,
        true, 
        array("name" => "sharpen", "precision" => 100),//array(),//$arFilter
        false,
        100
    );
Но любые изменения в её параметрах не влияют на итог, думаю дело в работе gd. Нашёл такой вариант решения - http://mithrandir.ru/professional/php/gd-resizing-artefacts-fix.html, но может в битриксе есть настройки для этого?
 
Добрый день
Если используется эта функция имеет смысл использовать сервис Optipic ?
 
В принципе да, еще подсожмет.
Но я от сервиса отказался, он мне визуально много картинок подпортил.  
Изменено: Михаил Базаров - 11.03.2025 10:19:59
 
Добрый день.
Столкнулся со следующей проблемой.

Есть задача вывести несколько изображений в детальной новости. Для этого дела используем fotorama.

Так как изображений несколько, чтобы страница быстрее грузилась, мы для изображений делаем миниатюры. Делаются миниатюры с помощью Битрикс'овой функции ResizeImageGet.

Всё почти-что здорово работает, но иногда на некоторых страницах при первой загрузке выводится вместо первой большой картинки на весь экран, маленькая. Отресайзенная (оу щит, сори за такой слэнг) до размеров которые мы задали ранее. Хотя по логике должна выводится большая и далее миниатюры.

Что я делаю не так?

Вот, код всего этого действа

Код
<div class="col-12 p-0 fotorama"
         data-nav="thumbs" data-thumbwidth="250" data-thumbheight="141" data-allowfullscreen="true">
      <? 
      // additional photos 
      if(count($arResult["MORE_PHOTO"])>0):?> 
      <?foreach($arResult["MORE_PHOTO"] as $PHOTO):?>
      <? $file = CFile::ResizeImageGet($PHOTO, array('width'=>'250', 'height'=>'141'), BX_RESIZE_IMAGE_EXACT, true); ?>
      <a href="<?=$PHOTO["SRC"]?>"> 
      <img border="0" src="<?=$file["src"]?>"   alt="<?=$arResult["NAME"]?>" title="<?=$arResult["NAME"]?>" /> 
      </a> 
      <?endforeach?> 
      <?endif?>
    </div>
 
Это вам нужно поразбираться с самой фоторамой, быть может не успевает отработать на странице, при ее загрузке.
Изменено: Михаил Базаров - 11.03.2025 10:20:09
Читают тему
Форма ответов
 
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
Загрузить файлы
 

Блог-note: заметки разработчика

Цвета из справочника Highload блоков в списке новостей

На сайте выводятся новости с помощью компонента news.list, при этом у новостей есть свойство "Цвета" типа &quo...

Минимальная сумма заказа в корзине и оформлении заказа в 1С-Битрикс

В этой заметке добавим возможность установки минимальной суммы заказа, в новом шаблоне корзины на 1С-Битрикс.

Выбор основного раздела для элемента инфоблока в 1С-Битрикс

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

Вывести производителей на сайте с отбором его товаров из каталога

Достаточно частая задачка для каталога или интернет-магазина: вывести список производителей с подробными описаниями, а т...

Регистрация пользователя в определенную группу сайта на Битрикс

Достаточно часто требуется регистрировать пользователя в определенную группу, в зависимости от того какую форму регистра...

Заполнить инфоблок брендов из свойства инфоблока с товарами

Задача: в интернет-магазине есть инфоблок с товарами, загружаемый из 1С, у которого заполнено свойство "Производите...

Адаптивное гамбургер меню для битрикс

Заметка коротенькая, но решил оставить ее - так как самому часто нужно нечто подобное. В архиве готовый шаблон для Битри...

Модифицировать состав заказа #ORDER_LIST# в почтовом событии "Новый заказ"

Если вы хотите как-то по особенному сверстать состав заказа в почтовом уведомлении 1С-Битрикс "Новый заказ", у вас это н...

Обновление 1С-Битрикс с PHP 7, до поддержки версии PHP 8.3

Задача: обновить устаревший сайт на платформе 1С-Битрикс, который не получал обновлений уже более 4 лет и работает на PH...