Компонент для генерации ссылок на миниатюры картинок в микро-сервисе Imager.
Для работы нужно настроить и запустить микро-сервис Imager.
Клонирование репозитория
git clone https://github.com/pkg-ru/imager-client.git && cd imager-client
Установка контейнера разработки
docker compose build && docker compose start
Запуск тестов
docker exec -it imager-client bash -c "go run test/*.go"
Сборка
docker exec -it imager-client bash -c "go run test/*.go && npm run build && python3 -m build"
Документация: RU / EN
Общие сведения
Инициализация компонента
Imager (thumb)
thumb - название настроек на сервере (по умолчанию: default)
Можно передать массив настроек, кроме реализации на языке Go.
Настройки обработки картинок на сервере
thumb (thumb)
thumb - название настроек на сервере (по умолчанию: default)
Ширина картинки
width (width)
width - ширина.
Если передать 0, то ширина не изменяется, и сохраняет свои пропорции относительно высоты.
Высота картинки
height (height)
height - высота.
Если передать 0, то высота не изменяется, и сохраняет свои пропорции относительно ширины.
Установка ширины и высоты изображения
size (width, height)
width - ширина.
Если передать 0, то ширина не изменяется, и сохраняет свои пропорции относительно высоты.
height - высота.
Если передать 0, то высота не изменяется, и сохраняет свои пропорции относительно ширины.
Обрезка изображения в размер
crop (crop)
crop - обрезка изображения (по умолчанию false).
Если true — при установке ширины и высоты этот параметр масштабирует и обрезает картинку в указанный размер.
Если false — при установке ширины и высоты параметр масштабирует картинку в указанный размер.
Поля, которые образуются в результате масштабирования, закрашиваются установленным цветом или остаются прозрачными (если это возможно).
Повтор анимации
loop (loop)
loop - повтор анимации (по умолчанию true).
Если true — анимация зацикливается.
Если false — анимация проигрывается 1 раз.
Заливка фона цветом
color (r, g, b)
r - Красный.
g - Зеленый.
b - Синий.
Устанавливает цвет заливки фона в RGB формате.
Обрезание краев картинки
trim (active, rate, colors)
active - активность фильтра.
rate - степень сравнения цветов (чем ниже, тем точнее цвет).
colors - список цветов в RGB формате: [[255, 255, 255], [0, 0, 0]].
С помощью этого фильтра можно обрезать картинку по прозрачным пикселям, черным/белым или любым другим цветам, которые находятся по краям (верх/низ/лево/право) картинки.
Активность обрезания краев картинки
trimActive (active)
active - активность фильтра обрезания краев.
Если true — обрезаем.
Если false — не обрезаем.
Степень сопоставления цвета для обрезания краев
trimRate (rate)
rate - степень сопоставления цвета.
Чем ниже это значение, тем точнее сопоставляется цвет.
Цвета, которые будут обрезаны по краям
trimColors (colors)
colors - список цветов.
Список в RGB формате: [[255, 255, 255], [0, 0, 0]].
Качество превью картинки
quality (quality)
quality - качество результата.
Чем ниже значение, тем хуже качество и меньше размер файла (не для файлов результата: gif/png).
Настройка (кроме Go)
setting (setting)
setting - список/массив настроек (кроме Go).
Пример:
{
# ширина
'width': 100,
# высота
'height': 100,
# качество
'quality': 85,
# обрезка в размер
'crop': false,
# повтор анимации
'loop': true,
# цвет заливки
'color': [255, 255, 255],
# обрезка краев
'trimActive': true,
# степень сопоставления при обрезании краев
'trimRate': 20,
# список цветов для обрезания краев
'trimColor': [[255, 255, 255], [0, 0, 0]],
}
Копирование, чтобы не вносить изменения в общий экземпляр
copy () / clone ()
Можно использовать для группировки по типам/настройкам ассетов.
Получение ссылки без изменения формата картинки
get (file, setting)
file - путь к исходному файлу (относительно web).
setting - список/массив настроек (кроме Go).
Генерирует ссылку на ассет картинки по установленным параметрам, без изменения расширения исходного файла.
Получение ссылки с конвертацией в другой формат
convert (file, format, setting)
file - путь к исходному файлу (относительно web).
format - формат файла результата.
setting - список/массив настроек (кроме Go).
Генерирует ссылку на ассет картинки по установленным параметрам и с установленным расширением файла результата.