博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP图像操作类
阅读量:5115 次
发布时间:2019-06-13

本文共 1606 字,大约阅读时间需要 5 分钟。

基于已给出的各种图像操作方法,这里我总结出了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); } }

转载于:https://www.cnblogs.com/jhcelue/p/7089149.html

你可能感兴趣的文章
hihoCoder #1831 : 80 Days-RMQ (ACM/ICPC 2018亚洲区预选赛北京赛站网络赛)
查看>>
图片等比例缩放及图片上下剧中
查看>>
WebView加载网页详情
查看>>
【转载】Linux screen 命令详解
查看>>
dd命令 建立两颗一模一样的磁盘
查看>>
常用的jquery触屏手机页面特效代码下载
查看>>
background-clip,background-origin
查看>>
C# 如何创建一个Windows服务
查看>>
集群和分布式区别
查看>>
Android(java)学习笔记153:采用post请求提交数据到服务器(qq登录案例)
查看>>
Java基础知识强化101:Java 中的 String对象真的不可变吗 ?
查看>>
Android 高级UI设计笔记12:ImageSwitcher图片切换器
查看>>
虚拟主机与虚拟目录学习小结
查看>>
hlg1414安装雷达【贪心】
查看>>
Blog文章待看
查看>>
Golang flag包使用详解(一)
查看>>
python文件IO
查看>>
升级到 .NET Core 2.1
查看>>
对Java前四章的感受
查看>>
【Linux】ping命令详解
查看>>