rkr/image

使用gd-lib的简单图像处理库

0.1.6 2024-01-15 15:37 UTC

This package is auto-updated.

Last update: 2024-09-06 19:55:36 UTC


README

使用gd-lib的简单图像处理库

安装

composer require rkr/image

使用

更多信息请参考文档

按比例重采样

use Kir\Image\Image;
$image = Image::loadFromFile('image.png');

$newImage = $image->getCopy();
$newImage->resizeProportional(500);
$newImage->saveAsWebP('new-image-width-500.webp');

$newImage = $image->getCopy();
$newImage->resizeProportional(null, 500);
$newImage->saveAsWebP('new-image-height-500.webp');

$newImage = $image->getCopy();
$newImage->resizeProportional(500, 500);
$newImage->saveAsWebP('new-image-largest-side-to-500.webp');

放大画布

use Kir\Image\Image;
$image = Image::loadFromFile('image.png');
$image->resizeProportional(500, 500);
$image->resizeCanvasCentered(500, 500);
$image->saveAsWebP('500x500.webp');

自动裁剪图像,可选边框

裁剪功能通过单独的算法解决。如果指定的边框宽度为百分比,但在实际裁剪过程中切掉了太多的原始图形,则该图像部分将保留在边框区域内。

use Kir\Image\Image;
use Kir\Image\Color;
$image = Image::loadFromFile('image.png');

$image->getCopy()
    ->crop(15 /* Threshold in 0..255 color scale */, 3 /* Border width in % */, Color::whiteOpaque())
    ->resizeProportional(500, 500)
    ->resizeCanvasCentered(500, 500)
    ->saveAsWebP('500x500.webp');