cmsx / image
CMSx Image Component
dev-master
2013-06-20 11:34 UTC
Requires
- php: >=5.3.0
- ext-gd: *
This package is not auto-updated.
Last update: 2024-11-09 15:36:08 UTC
README
Всё начинается с загрузки исходного изображения в объект Image. В конструктор нужно передать имя файла или GD-ресурс.
Преобразования производятся с помощью последовательного назначения модификаторов:
addResize($width, $height)
- Пропорциональное сжатие картинки до заданных размеров;addCrop($width, $height, $x, $y)
- Обрезка картинки до заданных размеров;addWatermark($file, $x, $y)
- Добавление водяного знака;
При этом, переменные $x
и $y
позволяют задать положение для действия (обрезка и положение водяного знака). Например, можно обрезать квадрат 150х150:
addCrop(150, 150, 10, 5)
- начиная с 10 пиксела слева и 5 пиксела сверху по направлению вниз вправо.addCrop(150, 150, -10, -5)
- начиная с 10 пиксела справа и 5 пиксела снизу по направлению влево вверх.addCrop(150, 150, 'left', 'top')
- слева сверху изображения.addCrop(150, 150, 'center', 'center')
- по центру.addCrop(150, 150, 'right', 'bottom')
- справа снизу.- аналогично это же позиционирование можно применить и к водяным знакам или комбинировать на своё усмотрение.
Последовательное комбинирование модификаторов позволяет достаточно гибко настроить обработку:
Image::Me('test.jpg')
->addResize(400, 300)
->addCrop(300, 300)
->save('test_cropped.png')
Image::Me('test.jpg')
- Сокращенный вызов конструктора класса. Загружаем файл test.jpgaddResize(400, 300)
- сжимаем изображение до 400х300addCrop(300, 300)
- обрезаем в квадрат (по умолчанию из центра)save('test_cropped.png')
- здесь нет опечатки с расширением файла, исходный JPG можно сохранить в PNG просто указав нужное расширение файла (gif, jpg, png).
При желании, новый файл можно сразу вывести в STDOUT через метод show()
.