欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php图像操作类(1/3)

程序员文章站 2024-01-10 15:47:22
...
php图像操作类 本款程序可以获取图片大小,格式等信息,同时还可以对图片进行缩略图处理与给图片加水印功能哦。

php教程图像操作类
本款程序可以获取图片大小,格式等信息,同时还可以对图片进行缩略图处理与给图片加水印功能哦。

class image{
public $filename;
private $info;
private $im;

//构造
public function __construct($filename){
$this->filename = $filename;
$this->info = @getimagesize($filename);
if($this->info[2]>3){echo "只支持gif、jpeg、png 格式。";exit;}

}

// 载入
public function imgload(){
switch($this->info[2]){
case 1:
$this->im=@imagecreatefromgif($this->filename);
break;
case 2:
$this->im=@imagecreatefromjpeg($this->filename);
break;
case 3:
$this->im=@imagecreatefrompng($this->filename);
break;
}
}

// 保存
public function imagesave($img,$savename,$inf){
switch($inf){
case 1:
imagegif($img,$savename);;
break;
case 2:
imagejpeg($img,$savename);;
break;
case 3:
imagepng($img,$savename);;
break;
}
}


//滤镜
public function filter($arg=1,$savename=''){
$this->imgload();

if($savename=='')$savename='f_'.$this->filename;
$ok=false;
switch($arg){
case 1:
imagefilter($this->im,img_filter_negate);//反色
$ok=true;
break;
case 2:
imagefilter($this->im,img_filter_grayscale); //黑白
$ok=true;
break;
case 3:
imagefilter($this->im,img_filter_emboss);//浮雕
$ok=true;
break;
case 4:
imagefilter($this->im,img_filter_gaussian_blur); //高斯模糊
$ok=true;
break;
case 5:
imagefilter($this->im,img_filter_brightness,50); //亮度50
$ok=true;
break;
case 6:
imagefilter($this->im,img_filter_contrast,-50); //对比度-50
$ok=true;
break;
}
if($ok){
$this->imagesave($this->im,$savename,$this->info[2]); //写文件
imagedestroy($this->im);
return 1;
}else{
imagedestroy($this->im);
return 0;}
}

1 2 3