wapmorgan / imagery
简单的图片编辑器,用于调整大小、裁剪、制作拼贴以及其他基本的图片操作。
Requires
- ext-gd: *
This package is auto-updated.
Last update: 2024-09-12 04:37:38 UTC
README
Imagery 支持
- 调整大小
- 裁剪
- 翻转和旋转
- 制作拼贴
- 应用滤镜和效果
- 安装
- API
安装
- Composer 包
composer require wapmorgan/imagery
API
Imagery
use Imagery\Imagery;
打开
创建新的 Imagery 对象
$image = Imagery::open($filename);
- 从文件中。$image = Imagery::create($width, $height);
- 新图像$image = new Imagery(imagecreatefrombmp('image.bmp'));
- 从资源中
保存
public function save($filename, $quality = 75, $format = null)
- 将图像保存到磁盘。质量是一个介于0
(最差)和100
(最佳)之间的整数。默认为75
。质量仅适用于 JPEG、PNG、WEBP。如果$format
不能通过文件扩展名确定,请明确指定。
支持的格式
属性
$image->width
- 图像宽度$image->height
- 图像高度$image->resource
- 图像的原始 gd 资源(您可以使用它与 gd 函数一起使用)
调整大小 && 放大
public function resize(int $width, int $height)
- 将图像调整大小为$width
X$height
public function zoomWidthTo(int $size)
- 按比例改变图像宽度到$size
public function zoomHeightTo(int $size)
- 按比例改变图像高度到$size
public function zoomMaxSide(int $size)
- 按比例放大较大的边到$size
,如果需要的话
裁剪
public function crop($x, $y, $x2, $y2)
- 裁剪图像的矩形部分public function decreaseSide($side, int $size)
- 从特定边删除图像的一部分。例如,如果 $side=top 且 $size=100,则将从顶部删除 100px。
旋转 && 镜像
public function rotate($angle, $bgColor = 0)
- 旋转图像。True
等于 90°,False
等于 -90°。public function flip($horizontally = true)
- 水平或垂直翻转图像。
拼贴
-
public function appendImageTo($side, Imagery $appendix, int $modifiers)
- 在$side
(《top|bottom|left|right》)将图像(《$appendix》)附加到当前图像上。修饰符Imagery::ZOOM_IF_LARGER
- 如果附加的图像大于当前图像的尺寸,则附加的图像的高度将被缩放(而不是调整大小)(当附加到左侧或右侧时);如果附加的图像大于当前图像的尺寸,则附加的图像的宽度将被缩放(而不是调整大小)(当附加到顶部或底部时);
-
public function placeImageAt($x, $y, Imagery $image)
- 在$x
X$y
将图像放置在当前图像上方。 -
public function placeImageAtCenter(Imagery $image)
- 将图像放置在当前图像的中心。
效果
-
public function filter($filter)
- 应用灰度或反转滤镜。传递Imagery::FILTER_NEGATE
或Imagery::FILTER_GRAYSCALE
作为 $filter。灰度
反转
-
public function changeContrast($newValue)
- 改变图像的对比度。新值可以在 100(最大对比度)到 -100(最小对比度)的范围内,0 表示没有变化。 -
public function changeBrightness($newValue)
- 改变图像的亮度。新值可以在 255(最大亮度)到 -255(最小亮度)的范围内,0 表示没有变化。 -
public function colorize($red, $green, $blue, $alpha = 127)
- 改变图片颜色。颜色(《$red, $green, $blue》)的范围是255到-255。$alpha
的范围是127到0。 -
public function blur($method)
- 模糊图片。方法可以是Imagery::GAUSSIAN_BLUR
或Imagery::SELECTIVE_BLUR
。 -
public function smooth($level)
- 平滑图片。平滑程度可以从0到8。8表示最不平滑。 -
public function pixelate($blockSize = 5, $useModernEffect = true)
- 将图片像素化。$blockSize
是像素块的大小。
工具
存在一个工具类:Imagery/Tools
。
-
static public function pHash(Imagery $image, $sizes = array(8, 8))
计算图像的感知哈希。