larakit/hlp-image

[Larakit] [辅助] 文件

0.0.1 2017-04-13 06:32 UTC

This package is auto-updated.

Last update: 2024-09-16 00:03:02 UTC


README

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);

指定的框架必须适合最终图像内部

/**
 * Указанная рамка должна помещаться внутрь конечного изображения
 * Т.е. если заказываем 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);