sqrt-pro / image
Image is part of SQRT Framework
Installs: 1 441
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 0
Open Issues: 0
Requires
- php: >=5.3.0
- ext-gd: *
- sqrt-pro/exception: ~0.1
This package is not auto-updated.
Last update: 2024-12-18 14:50:58 UTC
README
Всё начинается с загрузки исходного изображения в объект Image. В конструктор нужно передать имя файла или GD-ресурс.
Преобразования производятся с помощью последовательного назначения модификаторов:
resize($width, $height)
- Пропорциональное сжатие картинки до заданных размеров;crop($width, $height, $x, $y)
- Обрезка картинки до заданных размеров;cropResized($width, $height, $x, $y)
- Пропорциональное сжатие и обрезка картинки до заданных размеров;watermark($file, $x, $y)
- Добавление водяного знака;
При этом, переменные $x
и $y
позволяют задать положение для действия (обрезка и положение водяного знака). Например, можно обрезать квадрат 150х150:
сrop(150, 150, 10, 5)
- начиная с 10 пиксела слева и 5 пиксела сверху по направлению вниз вправо.сrop(150, 150, -10, -5)
- начиная с 10 пиксела справа и 5 пиксела снизу по направлению влево вверх.сrop(150, 150, 'left', 'top')
- слева сверху изображения.сrop(150, 150, 'center', 'center')
- по центру.сrop(150, 150, 'right', 'bottom')
- справа снизу.- аналогично это же позиционирование можно применить и к водяным знакам или комбинировать на своё усмотрение.
Последовательное комбинирование модификаторов позволяет достаточно гибко настроить обработку:
$img = new Image('test.jpg'); // Загружаем файл test.jpg $img ->resize(400, 300) // сжимаем изображение до 400х300 ->crop(300, 300) // обрезаем в квадрат (по умолчанию из центра) ->save('test_cropped.png') // исходный JPG можно сохранить в PNG просто указав нужное расширение файла (gif, jpg, png).
При желании, новый файл можно сразу вывести в STDOUT через метод output()
.