Skip to content

添加多种图片处理功能

Compare
Choose a tag to compare
@moxuandi moxuandi released this 03 Aug 08:23
· 33 commits to master since this release

裁剪图配置:

'crop' => [
    'width' => 300,  // 裁剪图的宽度
    'height' => 200,  // 裁剪图的高度
    'top' => 200,  // 裁剪图顶部的偏移, y轴起点, 默认为`0`
    'left' => 200,  // 裁剪图左侧的偏移, x轴起点, 默认为`0`
    'match' => ['image', 'crop'],  // 裁剪图路径的替换规则, 必须是两个元素的数组
],

添加边框的配置:

'frame' => [
    'margin' => 20,  // 边框的宽度, 默认为`20`
    'color' => '666',  // 边框的颜色, 十六进制颜色编码, 可以不带`#`, 默认为`666`
    'alpha' => 100,  // 边框的透明度, 可能仅`png`图片生效, 默认为`100`
    'match' => ['image', 'frame'],  // 添加边框后保存路径的替换规则, 必须是两个元素的数组
],

添加图片水印的配置:

'watermark' => [
    'watermarkImage' => '/uploads/watermark.png',  // 水印图片的绝对路径
    'top' => 100,  // 水印图片的顶部距离原图顶部的偏移, y轴起点, 默认为`0`
    'left' => 200,  // 水印图片的左侧距离原图左侧的偏移, x轴起点, 默认为`0`
    'match' => ['image', 'watermark'],  // 添加图片水印后保存路径的替换规则, 必须是两个元素的数组
],

添加文字水印的配置:

'text' => [
    'text' => 'TONGMENGCMS',  // 水印文字的内容
    'fontFile' => '@yii/captcha/SpicyRice.ttf',  // 字体文件, 可以是绝对路径或别名
    'top' => 100,  // 水印文字距离原图顶部的偏移, y轴起点, 默认为`0`
    'left' => 200,  // 水印文字距离原图左侧的偏移, x轴起点, 默认为`0`
    'fontOptions' => [  // 字体属性
        'size' => 12,  // 字体的大小, 单位像素(`px`), 默认为`12`
        'color' => 'fff',  // 字体的颜色, 十六进制颜色编码, 可以不带`#`, 默认为`fff`
        'angle' => 0,  // 写入文本的角度, 默认为`0`
    ],
    'match' => ['image', 'text'],  // 添加文字水印后保存路径的替换规则, 必须是两个元素的数组
],

调整图片大小的配置:

'resize' => [
    'width' => 300,  // 图片调整后的宽度
    'height' => 200,  // 图片调整后的高度
    'keepAspectRatio' => true,  // 是否保持图片纵横比, 默认为`true`
    'allowUpscaling' => false,  // 如果原图很小, 图片是否放大, 默认为`false`
    'match' => ['image', 'resize'],  // 调整图片大小后保存路径的替换规则, 必须是两个元素的数组
],