3 июня 2014 г.

Thumbnailer на PHP

Хотелось лаконичного по коду, но, тем не менее, хорошо расширяемого тумбнейлера с возможностями уменьшения как вписывая в размеры, так и подрезая края. Взял PHP Gregphoto_Image за основу. Хотя, именно логику изменения размеров пришлось переписать.

Репозиторий.

Примеры использования подходят из исходной библиотеки за исключением констант FIT_WIDTH, FIT_HEIGHT, CROP_FIT, EXACT вместо MAX_WIDTH, MAX_HEIGHT, BEST_FIT, EXACT.

  • FIT_WIDTH - ограничивает изображение только по ширине, высоту подбирая пропорционально;
  • FIT_HEIGHT - ограничивает изображение только по высоте, ширину подбирая пропорционально;
  • CROP_FIT - пропорционально уменьшает изображение, максимально заполняя установленные размеры с подрезанием "лишнего";
  • EXACT - задает точные размеры с изменением пропорций изображения.

Режим FIT_WIDTH|FIT_HEIGHT позволяет пропорционально вписать в размеры.

require('Gregphoto_Image.php');
$image_path = 'путь_до_изображения_jpg_png_gif';
$image = new Gregphoto_Image($image_path);
$image->setMaxWidth(100);
$image->setMaxHeight(100);
$image->resize(Gregphoto_Image::FIT_WIDTH | Gregphoto_Image::FIT_HEIGHT);
$image->showThumbnail();

Комментариев нет:

Отправить комментарий