Разместить объявление
Vibix - надеждый видео-балансир
Rukassa - надёжная платёжная система для сайтов и телеграм ботов
VIPAdmin / CMS / Datalife Engine / Хаки DLE / Реализация эффекта Philips Ambilight в превью изображений

Реализация эффекта Philips Ambilight в превью изображений

Реализация эффекта Philips Ambilight в превью изображений

Собственно наша задача - реализовать создание вот таких вот превьюшек (см. картинку выше), используя DataLife Engine версии 8.3 или 8.5 (ниже тоже будет работать, но не тестировал лично).
Для этого нам понадобится 2-3 минуты свободного времени, не больше.

1) Открыть engine/classes/thumb.class.php и найти:

function sizes_img($sizes_img)



Выше вставить:
function insert_bg($width, $height, $padding) {

        $dest_image = imagecreatetruecolor($width, $height);

        $result = imagecopyresized($dest_image, $this->img['src'],  0,  0,  0,  0, $width, $height, $this->img['lebar'], $this->img['tinggi']);

        if (!$result) return FALSE;

        for ($i= 0; $i <= 100; $i++) {
            $result = imagefilter($dest_image, IMG_FILTER_SMOOTH, 6);
            if (!$result) return FALSE;
            }

        if ( ($this->img['lebar'] ==  0) or ($this->img['tinggi'] ==  0) ) {
            return FALSE;
        }

        $ratio = min( ($width-2*$padding)/$this->img['lebar'] , ($height-2*$padding)/$this->img['tinggi'] );

        $new_width = $ratio * $this->img['lebar'];
                $new_height = $ratio * $this->img['tinggi'];

        if ( ($new_width >= $this->img['lebar']) or ($new_height >= $this->img['tinggi']) ) {
            $new_width = $this->img['lebar'];
            $new_height = $this->img['tinggi'];
        }

        imagecopyresampled($dest_image, $this->img['src'], round(($width-$new_width)/2), round(($height-$new_height)/2),  0,  0, $new_width, $new_height, $this->img['lebar'], $this->img['tinggi']);
        $this->img['src'] = $dest_image;

        return true;

    }


2) Найти:
return $this->crop( intval($size[0]), intval($size[1]) );




Заменить на:
return $this->insert_bg( $size[0], $size[1], 10 ); // 10 - отступ



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

3) При загрузке изображений указывать размеры превью вида widthxheight, например, 130x90.

ТОП Записей

Автор: truapps

Дата: 08.03.2020 22:53

Просмотров: 748

Оцените статью:

0 0

Партнерки

Обзор RollerAds: умная пуш-сеть с инновационными инструментами
Обзор RollerAds: умная пуш-сеть с инновационными инструментами
-1
Перейти
Huffson Group: премиальная CPA-сеть для iGaming
Huffson Group: премиальная CPA-сеть для iGaming
-1
Перейти

Еще немного интересного

Сервисы / Парсинг A-PARSER - парсер сайтов № 1
Сервисы / Сервера и хостинги Хостинг PrivateAlps (Игнорирует DMCA)
Сервисы / Платёжные системы Merchant001- надежный эквайринг для сайта
Статьи Дорвеи 2023-2024
Арбитраж трафика / Статьи Арбитраж трафика на пуш уведомлениях
Статьи / Софт / Антидетект Браузеры Лучшие антидетект браузеры
Сервисы / Трекеры / Клоака Keitaro PRO - трекер для арбитража трафика
Хостинг / Скрипты сайтов / Статьи Как настроить работу почты
Хостинг / Скрипты сайтов / Статьи Урок доступ mysql с любого ip
Хостинг / Скрипты сайтов / Статьи Как сделать моментальную установку сервера? HOSTINPL
Хостинг / Статьи Exim (Восстановление по e-mail)
Скрипты сайтов / Статьи JavaScript - Меняем CSS

Отзывы (0)




To connect permitted only files with the extension: .tpl or .php To connect permitted only files with the extension: .tpl or .php