| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
mf72
10年前发布

PHP图像操作类

PHP图像操作的一个类,包括给图像添加文字水印、图像水印和压缩图片。

    <?php                class Image {                    private $info;            private $type;            private $iamge;                            /**           * 打开图片,写入内存           *           **/            public function __construct($src)             {                $this->info = getimagesize($src);                $this->type = image_type_to_extension($this->info[2],false);                $fun = "imagecreatefrom".$this->type;                $this->image = $fun($src);            }                    //缩略图            public function thumb($width, $height)            {                $image_thumb = imagecreatetruecolor($width, $height);                imagecopyresampled($image_thumb, $this->image, 0, 0, 0, 0, $width, $height, $this->info[0], $this->info[1]);                imagedestroy($this->image);                $this->image = $image_thumb;            }                    //文字水印            public function fontMark($content, $fontUrl, $size, $color, $locate=array('x'=>0,'y'=>0), $angle=0)            {                $color = imagecolorallocatealpha($this->image, $color[0], $color[1], $color[2], $color[3]);                imagettftext($this->image, $size, $angle, $locate['x'], $locate['y'], $color, $fontUrl, $content);            }                    //图片水印            public function imageMark($src,$locate,$alpha)            {                $info2 = getimagesize($src);                $type2 = image_type_to_extension($info2[2],false);                $fun2 = "imagecreatefrom".$type2;                $water = $fun2($src);                imagecopymerge($this->image, $water, $locate['x'], $locate['y'], 0, 0, $info2[0], $info2[1], $alpha);                imagedestroy($water);            }                    //在浏览器中显示            public function show()            {                header("Content-type:".$this->info['mime']);                $fun = "image".$this->type;                $fun($this->image);            }                    //保存为文件            public function save($newname)            {                $fun = "image".$this->type;                $fun($this->image, $newname.'.'.$this->type);            }                    public function __destruct()            {                imagedestroy($this->image);            }        }