账户中心 退出系统
开发文档 资讯·分享 技术交流 会员登录
phpGrace GSCMS 公众号系统
图片处理类

功能介绍

图片处理类集合了图片水印、文字水印、缩略图、裁切等常用的图片处理功能(支持 gif ^_^)。

初始化图片处理对象

//初始化图片处理对象时传递被处理的图片路径作为参数, 如 :

$image = new phpGrace\tools\image('demo.jpg');

1、water($source, $locate = image::RB, $alpha = 80) 添加水印

参数 : 
1、水印图片路径
2、水印位置[ 默认 image::RB - 右下角 ],可以使用的参数:
const LT =   1 ; //左上角
const TC =   2 ; //上居中
const RT =   3 ; //右上角
const LC =   4 ; //左居中
const CC =   5 ; //居中
const RC =   6 ; //右居中
const LB =   7 ; //左下角
const BC =   8 ; //下居中
const RB =   9 ; //右下角
说明 : 传递时使用数值即可!
3、水印透明度,默认 80;

演示代码

<?php
class indexController extends grace{
    public function index(){
        $image = new \phpGrace\tools\image('./imgs/demo.png');
        $image->water('./imgs/water.png');
        $image->save('./imgs/demo_save');//保存图片 [ 参数文件名,不要传递扩展名 ]
    }
}

2、thumb($width, $height, $type = image::TB1) 缩略图生成

参数 :
1、缩略图最大宽度
2、缩略图最大高度
3、缩略图裁剪类型
const TB1 =  1 ; //缩略图等比例缩放
const TB2 =  2 ; //缩略图缩放后填充
const TB3 =  3 ; //缩略图居中裁剪
const TB4 =  4 ; //左上角裁剪类型
const TB5 =  5 ; //右下角裁剪类型
const TB6 =  6 ; //固定尺寸缩放类型
传参时请使用数值!

演示代码

<?php
class indexController extends grace{
    public function index(){
        $image = new phpGrace\tools\image('./imgs/demo.png');
        $image->thumb(200, 200, 3);
        $image->save('./imgs/demo22');
        echo '<img src="./imgs/demo22.png" />';
    }
}

3、crop($w, $h, $x, $y, $width, $height) 图片裁切方法

参数 : 
1、裁切区域宽度
2、裁切区域高度
3、裁切区域x坐标【默认 0】
4、裁切区域y坐标【默认 0】
5、图像保存宽度【默认等于裁切宽度】
6、图像保存高度【默认等于裁切高度】

演示代码

<?php
class indexController extends grace{
    public function index(){
        $image = new phpGrace\tools\image('./imgs/demo.png');
        $image->crop(200, 200, 100, 100, 50, 50);
        $image->save('./imgs/demo22');
        echo '<img src="./imgs/demo22.png" />';
    }
}

4、 text() 添加文字到图片

参数 : 
1、添加的文字内容
2、字号
3、文字颜色及透明度 rgb 模式【默认 array(0, 0, 0)】
4、 文字写入位置【默认 9】
    const LT =   1 ; //左上角
    const TC =   2 ; //上居中
    const RT =   3 ; //右上角
    const LC =   4 ; //左居中
    const CC =   5 ; //居中
    const RC =   6 ; //右居中
    const LB =   7 ; //左下角
    const BC =   8 ; //下居中
    const RB =   9 ; //右下角
    传递时使用数值即可!
5、文字相对当前位置的偏移量
6、文字倾斜角度
7、字体文件路径【默认 phpGrace/fonts/AMBROSIA.ttf】

演示代码

<?php
class indexController extends grace{
    public function index(){
        $image = new phpGrace\tools\image('./imgs/demo.png');
        $image->text('phpGrace', 20, array(255, 0, 0));
        $image->save('./imgs/demo22');
        echo '<img src="./imgs/demo22.png" />';
    }
}