Larakit Helper Image
Модуль-обертка для добавления "синтаксического сахара" к модулю intervention/image
1. Вписываем изображение в указанную ширину
/**
* Вписываем изображение в указанную ширину
* Высота какая получится такая и будет
* Пример: фотки на аватарках в контактике
*
* @param \Intervention\Image\Image $img
* @param $w
* @param bool $can_upsize
*
* @return \Intervention\Image\Image
*/
$original = Image::make(public_path('original.jpg'));
\Larakit\Helpers\HelperImage::resizeByWidth($original, 100);
2. Насильно вписываем изображение без учета пропорций в указанные рамки
/**
* Насильно вписываем изображение без учета пропорций в указанные рамки
*
* @param \Intervention\Image\Image $img
* @param $w
* @param $h
*
* @return \Intervention\Image\Image
*/
$original = Image::make(public_path('original.jpg'));
\Larakit\Helpers\HelperImage::resizeIgnoringAspectRatio($original, 100, 100);
3. Исходная картинка сжимается до тех пор пока не начнет целиком входить в указанные рамки
/**
* Исходная картинка сжимается до тех пор пока не начнет целиком входить в указанные рамки
* С сохранением пропорций
*
* @param int $w
* @param int $h
*
* @return \Image
*/
$original = Image::make(public_path('original.jpg'));
\Larakit\Helpers\HelperImage::resizeImgInBox($original, 100, 100);
4. Уменьшаем размер исходного изображения с сохранением пропорций так,
чтобы новое получилось вписанным в указанный размер
/**
* Уменьшаем размер исходного изображения с сохранением пропорций так,
* чтобы новое получилось вписанным в указанный размер
* Там где изображение уже отсутствует - добиваем белым цветом до указанного размера
*
* @param type $width
* @param type $height
*
* @return \Image
*/
$original = Image::make(public_path('original.jpg'));
\Larakit\Helpers\HelperImage::cropImgInBox($original, 100, 100);
5. Уменьшаем размер исходного изображения с сохранением пропорций так,
чтобы новое получилось описанным вокруг указанного размера
/**
* Уменьшаем размер исходного изображения с сохранением пропорций так,чтобы новое получилось
* описанным вокруг указанного размера
* Там где изображение будет за границами рамки оно будет просто обрезано с центровкой посредине картинки
*
* @param \Intervention\Image\Image $img
* @param $width
* @param $height
* @param $x = null
* @param $y = null
*
* @return \Intervention\Image\Image
*/
$original = Image::make(public_path('original.jpg'));
\Larakit\Helpers\HelperImage::cropBoxInImg($original, 100, 100);
6. Указанная рамка должна помещаться внутрь конечного изображения
/**
* Указанная рамка должна помещаться внутрь конечного изображения
* Т.е. если заказываем 100 на 400 а картинка 2000 на 1000
* То картинка будет уменьшаться до тех пор пока ее высота меньше указанного
* или ширина меньше указанного
*
* @param \Intervention\Image\Image $img
* @param $w
* @param $h
*
* @return \Intervention\Image\Image
*/
$original = Image::make(public_path('original.jpg'));
\Larakit\Helpers\HelperImage::resizeBoxInImg($original, 100, 100);