蝙蝠岛资源网 Design By www.hbtsch.com
常用的php图片处理类(水印、等比缩放、固定高宽)分享
<"_".$height.".".$this->typeList[$this->source_type_id];
if($this->saveImage($tinyImage,$newPic)){
imagedestroy($tinyImage);
imagedestroy($handle);
}
}
//保存图片
private function saveImage($image,$url){
if(imagejpeg($image,$url)){
return true;
}
}
}
$imgHandle = new Image_process('D:\AppServ\www\test\getimg\14061907445601.jpg');
//$imgHandle->waterMakeImage('D:\AppServ\www\test\getimg\shougongke.png'); //生成水印图片
//$imgHandle->fixSizeImage(200,150); //固定长度图片
$imgHandle->scaleImage(0.2); //等比例缩放
"htmlcode">
<"imagecopyresampled" ))
{
$newim = imagecreatetruecolor ( $newwidth, $newheight );
imagecopyresampled ( $newim, $source, 0, 0, 0, 0, $newwidth, $newheight, $src_w, $src_h );
} else
{
$newim = imagecreate ( $newwidth, $newheight );
imagecopyresized ( $newim, $source, 0, 0, 0, 0, $newwidth, $newheight, $src_w, $src_h );
}
}
//输出(保存)图片
if (! empty ( $save_img ))
{
$org_funcs ['save_func'] ( $newim, $save_img );
} else
{
header ( $org_funcs ['header'] );
$org_funcs ['save_func'] ( $newim );
}
imagedestroy ( $newim );
return array ('flag' => True, 'msg' => '' );
}
/**
*
* 生成水印图片
* @param $org_img 原图像
* @param $mark_img 水印标记图像
* @param $save_img 当其目录不存在时,会试着创建目录
* @param array $option 为水印的一些基本设置包含:
* x:水印的水平位置,默认为减去水印图宽度后的值
* y:水印的垂直位置,默认为减去水印图高度后的值
* alpha:alpha值(控制透明度),默认为50
*/
public function water_mark($org_img, $mark_img, $save_img = '', $option = array())
{
//检查图片
$org_ext = $this->is_img ( $org_img );
if (! $org_ext ['flag'])
{
return $org_ext;
}
$mark_ext = $this->is_img ( $mark_img );
if (! $mark_ext ['flag'])
{
return $mark_ext;
}
//如果有保存路径,则确定路径是否正确
if (! empty ( $save_img ))
{
$f = $this->check_dir ( $save_img );
if (! $f ['flag'])
{
return $f;
}
}
//获取相应画布
$org_funcs = $this->get_img_funcs ( $org_ext ['msg'] );
$org_img_im = $org_funcs ['create_func'] ( $org_img );
$mark_funcs = $this->get_img_funcs ( $mark_ext ['msg'] );
$mark_img_im = $mark_funcs ['create_func'] ( $mark_img );
//拷贝水印图片坐标
$mark_img_im_x = 0;
$mark_img_im_y = 0;
//拷贝水印图片高宽
$mark_img_w = imagesx ( $mark_img_im );
$mark_img_h = imagesy ( $mark_img_im );
$org_img_w = imagesx ( $org_img_im );
$org_img_h = imagesx ( $org_img_im );
//合成生成点坐标
$x = $org_img_w - $mark_img_w;
$org_img_im_x = isset ( $option ['x'] ) "加载图片 $img_path 失败!" );
}
$ext = explode ( '.', $img_path );
$ext = strtolower ( end ( $ext ) );
if (! in_array ( $ext, $this->exts ))
{
return array ('flag' => False, 'msg' => "图片 $img_path 格式不正确!" );
}
return array ('flag' => True, 'msg' => $ext );
}
/**
*
* 返回正确的图片函数
* @param unknown_type $ext
*/
private function get_img_funcs($ext)
{
//选择
switch ($ext)
{
case 'jpg' :
$header = 'Content-Type:image/jpeg';
$createfunc = 'imagecreatefromjpeg';
$savefunc = 'imagejpeg';
break;
case 'jpeg' :
$header = 'Content-Type:image/jpeg';
$createfunc = 'imagecreatefromjpeg';
$savefunc = 'imagejpeg';
break;
case 'gif' :
$header = 'Content-Type:image/gif';
$createfunc = 'imagecreatefromgif';
$savefunc = 'imagegif';
break;
case 'bmp' :
$header = 'Content-Type:image/bmp';
$createfunc = 'imagecreatefrombmp';
$savefunc = 'imagebmp';
break;
default :
$header = 'Content-Type:image/png';
$createfunc = 'imagecreatefrompng';
$savefunc = 'imagepng';
}
return array ('save_func' => $savefunc, 'create_func' => $createfunc, 'header' => $header );
}
/**
*
* 检查并试着创建目录
* @param $save_img
*/
private function check_dir($save_img)
{
$dir = dirname ( $save_img );
if (! is_dir ( $dir ))
{
if (! mkdir ( $dir, 0777, true ))
{
return array ('flag' => False, 'msg' => "图片保存目录 $dir 无法创建!" );
}
}
return array ('flag' => True, 'msg' => '' );
}
}
if (! empty ( $_FILES ['test'] ['tmp_name'] ))
{
//例子
$img = new Img ();
//原图
$name = explode ( '.', $_FILES ['test'] ['name'] );
$org_img = 'D:/test.' . end ( $name );
move_uploaded_file ( $_FILES ['test'] ['tmp_name'], $org_img );
$option = array ('width' => $_POST ['width'], 'height' => $_POST ['height'] );
if ($_POST ['type'] == 1)
{
$s = $img->resize_image ( $org_img, '', $option );
} else
{
$img->thumb_img ( $org_img, '', $option );
}
unlink ( $org_img );
}
以上所述就是本文的全部内容了,希望大家能够喜欢。
标签:
php,图片处理
蝙蝠岛资源网 Design By www.hbtsch.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
蝙蝠岛资源网 Design By www.hbtsch.com
暂无常用的php图片处理类(水印、等比缩放、固定高宽)分享的评论...
更新日志
2025年10月27日
2025年10月27日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]