/** 'imagelib' 图片处理库类型(GD=>0,ImageMagick=>1) GD 是最广泛的处理库但是使用的系统资源较多。ImageMagick 速度快系统资源占用少,但需要服务器有执行命令行命令的权限。如果你的服务器有条件安装此程序 'imageimpath' ImageMagick 6 程序的安装路径。如果服务器的操作系统为 Windows,路径不要使用长文件名 'thumbquality' 缩略图质量0 ~ 100 'watermarkstatus' 是否启用水印 'watermarkminwidth' 水印添加条件:wxh 设置水印添加的条件,小于此尺寸的图片附件将不添加水印 'watermarkminheight' 水印添加条件:wxh 设置水印添加的条件,小于此尺寸的图片附件将不添加水印 'watermarktype' 类型水印: gif png text 'watermarktext' 文本水印文字 'watermarktrans' 水印融合度: 设置 GIF 类型水印图片与原始图片的融合度,范围为 1~100 的整数,数值越大水印图片透明度越低。PNG 类型水印本身具有真彩透明效果,无须此设置。本功能需要开启水印功能后才有效 'watermarkquality' JPEG 水印质量 : 设置 JPEG 类型的图片附件添加水印后的质量参数,范围为 0~100 的整数,数值越大结果图片效果越好,但尺寸也越大。本功能需要开启水印功能后才有效 */ function image() { global $_G; $s = &$_G['setting']; $this->param = array( 'imagelib' => $s['imagelib'], 'imageimpath' => $s['imageimpath'], 'thumbquality' => $s['thumbquality'], 'watermarkstatus' => unserialize($s['watermarkstatus']), 'watermarkminwidth' => unserialize($s['watermarkminwidth']), 'watermarkminheight' => unserialize($s['watermarkminheight']), 'watermarktype' => $s['watermarktype'], 'watermarktext' => $s['watermarktext'], 'watermarktrans' => unserialize($s['watermarktrans']), 'watermarkquality' => unserialize($s['watermarkquality']), ); }
/** * 生成图片的缩略图 * @param $source 图片源路径 * @param $target 生成的缩略图路径,路径为相对 data/attachment/ 的文件名 * 本地图片省略时自动加后缀 .thumb.jpg,远程图片无法省略 * @param $thumbwidth 缩略宽度 * @param $thumbheight 缩略高度 * @param $thumbtype 缩略方法 * 空 : 将原图片上传 * fixnone / 1 : 小于指定大小、保持比率(默认) * fixwr / 2 : 与指定大小相同、保持比率,超出部分剪切 * @param $nosuffix 缩略图路径不加 .thumb.jpg 后缀 * @return 是否处理完毕 */ function Thumb($source, $target, $thumbwidth, $thumbheight, $thumbtype = 1, $nosuffix = 0)
/** * 生成图片的水印 * @param $source 图片源路径 * @param $target 生成的图片路径,省略表示同 $source * @param $type forum - 论坛; portal - 门户; album - 空间相册 * @return 是否处理完毕 */ function Watermark($source, $target = '', $type = 'forum')
function error() {} 返回值说明 /* * $this->error() 返回值(用于处理失败时) * 0: 图片不符合处理条件,无需处理正常退出 * -1: $source 为无效的图片文件 * -2: 文件权限不足无法处理图片($source 图片无法读取、$target 路径不可写) * -3: 系统设置错误无法处理图片 * -4: 服务器缺少处理图片所需的功能 */