rkr / image
使用gd-lib的简单图像处理库
0.1.6
2024-01-15 15:37 UTC
Requires
- php: >= 7.4
- ext-gd: *
Requires (Dev)
- phpunit/phpunit: ^9.5
- saggre/phpdocumentor-markdown: 0.1.3
Suggests
- ext-exif: For automatic detection of image formats
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');