Download the PHP package techart/image-service without Composer
On this page you can find all versions of the php package techart/image-service. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download techart/image-service
More information about techart/image-service
Files in techart/image-service
Package image-service
Short Description Provider to libraries for working with images
License Apache-2.0
Informations about the package image-service
Сервис по обработке изображений
Сервис представляет собой адаптер для обработки, сохранения, получения и удаления картинок.
Стандарнно имеет 2 менеджров по работе с изображениями:
- , работает с библиотекой поддерживает драйвера и
- , работает с библиотекой поддерживает только драйвер
Менеджеры представляют собой класс адаптер к библиотекам, для написания собстевнного менеджера необходимо реализовать интерфейс
Так же есть 2 класса по работе с файловой системой и (для проектов на laravel), при желании можно написать собственный, главное не забыть реализовать интерфейс
Классы, реализующие , представляют собой управление файловой системой, что необходимо для создания директорий, получения пути до файла и т.д
Возможности
- Конвертировать изображения в разные форматы, зависит от выбранного менеджера.
- Изменять размер изображений, методы так же зависят от выбранного менеджера.
- Удалять созданные изображаения
Как использовать
Для использования необходимо выбрать класс менеджреа и класс по работе с файловой системой, задать конфигурационный массив и получить сущность класса ImageService.
Конфиг
Конфиг представляет собой массив, ограничевающий работу сервиса в рамках доуступных методов, размеров, качества и форматов изображений.
Может иметь следущие ключи:
Ключ явяется не обязательным
Ключ моежт быть как массивом, содрежащим доступные размеры, например:
А так же может быть строкой, со значением , что будет убирать ограничение на доступные размеры
Основные объекты для взаимодействия
Объект
Основной класс управления, предаставляющий доступ к объектам изменения изображения и работе с уже созданными картинками.
Объект
Представляет собой класс для получения и удаления созданых изображений.
Данный класс возвращает метод объекта . В метод необходимо передать оносительный путь оригинальной картинки
Класс имеет следующий набор методов
-
- возвращает или в зависимости от того, есть ли модифицированные копии оригинально изображения
-
- возвращает массив, содержащий пути всех модифицированных копий оригинально изображения
-
- удаляет все модифицированные копии оригинально изображения, и само оригинальное изображение. Для того, что бы не удалить оригинальное изображение передайте в качестве аргумента при вызове метода
Объект
Представляет собой класс, реализующий манипуляции с изображениями, через него так же можно задавать параметры для манипуляций.
Данный класс возвращает метод объекта .
Выполнение манипуляций происходит после вызова метода , который вернет сущность класса , который предоставляет доступ к информации, url и пути расположения оригинального и нового изображения.
Объект
Возвращается в результате работы метода объекта . Имеет следующий набор методов
-
- возвращает массив с данными об изображении, имеет следующую структуру:
-
- возвращает URL по которому картинка будет доступена
-
- возвращает абсолютный путь картинки
Так же существуют аналогичные методы для оригинального изображения, например,
Пример работы непосредственно с изображением
Пример работы:
Важно, путь до оригнальной картинки должен быть относительный
Модификация картинок
Пример работы, где параметры для обрабокти устанавливаются с помощью методов класса :
Пример работы, где параметры для обрабокти передаются массивом с следущими ключами:
- resize - ресайз
- quality - качество
- format - формат
- method - метод, по умолчанию resize
Пример работы, где параметры для обрабокти передаются строкой
- /r - ресайз
- /q - качество
- /f - формат
- /m - метод, по умолчанию resize(подходит в 90% случаев)
Удаление изображений
Не забудьте, при необходимости(удаление записи в бд, или обновления картинки и пр.), удалить изображения
Для этого есть объект и его метод , который удаляет все изображения связанные с оригиналом(включая оригинал).
Что бы не удалить оригинал передайте первым аргументом
Пример:
All versions of image-service with dependencies
intervention/image Version ^2.7
gumlet/php-image-resize Version ^2.0
illuminate/support Version >=8
illuminate/contracts Version >=8