PHP的图像处理实例小结【文字水印、图片水印、压缩图像等】


Posted in PHP onDecember 20, 2019

本文实例讲述了PHP的图像处理。分享给大家供大家参考,具体如下:

1、添加文字水印

//1、打开图片资源
  $src="./material/sea.jpg";
  $info=getimagesize($src);//获取图片信息
  $type=image_type_to_extension($info[2],false);//转化图片类型
  //var_dump($info);
  $fun="imagecreatefrom{$type}";//拼接成为imagecreatefromjpeg()方法
  $image=$fun($src);//新建GD图片资源
//操作图片
  $font="./material/segoepr.ttf";
  $content="@SuperTory";
  $color=imagecolorallocate($image,255,255,255);
  imagettftext($image,10,0,0,$info[1]-5,$color,$font,$content);//图片上写文字
//输出图片
  header("content-type:".$info['mime']);//$imfo['mine']='image/jpeg'
  $output="image{$type}";//拼接成为imagejpeg()方法
  $output($image);//输出到页面
  $output($image,'./material/watermarked.'.$type);//输出到本地路径
//销毁图片内存资源
  imagedestroy($image);

2、压缩图像

//打开图像
$src="./material/logo.png";
$info=getimagesize($src);
$type=image_type_to_extension($info[2],false);
$create="imagecreatefrom".$type;
$image=$create($src);
//压缩
$tinyImg=imagecreatetruecolor(100,100); //新建压缩后的图像资源
//将原图映射到压缩后的图像资源上
imagecopyresampled($tinyImg,$image,0,0,0,0,100,100,$info[0],$info[1]);
header("content-type:".$info['mime']);
$output="image{$type}";
//$output($image);
$output($tinyImg);
//销毁
imagedestroy($image);
imagedestroy($tinyImg);

3、添加水印图片

//获取原图片
$src="./material/sea.jpg";
$info=getimagesize($src);
$type=image_type_to_extension($info[2],false);
$create="imagecreatefrom".$type;
$image=$create($src);
//获取水印图片资源
$markSrc="./material/logo.png";
$markInfo=getimagesize($markSrc);
$markType=image_type_to_extension($markInfo[2],false);
$create="imagecreatefrom".$markType;
$markImage=$create($markSrc);
$tinyImg=imagecreatetruecolor(100,100);
imagecopyresampled($tinyImg,$markImage,0,0,0,0,
  100,100,$markInfo[0],$markInfo[1]);
imagecopymerge($image,$tinyImg,$info[0]-100,$info[1]-100,
  0,0,100,100,100);
//合并图片:(原图,水印图,原图x位置,原图y位置,水印x起点,水印y起点,水印x终点,水印y终点,不透明度)
header("content-type:".$info['mime']);
$output="image{$type}";
$output($image);
imagedestroy($image);
imagedestroy($markImage);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP url 加密解密函数代码
Aug 26 PHP
zf框架的Filter过滤器使用示例
Mar 13 PHP
php与flash as3 socket通信传送文件实现代码
Aug 16 PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 PHP
smarty模板引擎之配置文件数据和保留数据
Mar 30 PHP
wamp服务器访问php非常缓慢的解决过程
Jul 01 PHP
使用phpexcel类实现excel导入mysql数据库功能(实例代码)
May 12 PHP
php 在字符串指定位置插入新字符的简单实现
Jun 28 PHP
PHP编写简单的App接口
Aug 28 PHP
php通过执行CutyCapt命令实现网页截图的方法
Sep 30 PHP
mac系统下安装多个php并自由切换的方法详解
Apr 21 PHP
在PHP中实现使用Guzzle执行POST和GET请求
Oct 15 PHP
Laravel框架处理用户的请求操作详解
Dec 20 #PHP
PHP上传图片到数据库并显示的实例代码
Dec 20 #PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 #PHP
Laravel jwt 多表(多用户端)验证隔离的实现
Dec 18 #PHP
PHP中用Trait封装单例模式的实现
Dec 18 #PHP
PHP实现微信公众号验证Token的示例代码
Dec 16 #PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 #PHP
You might like
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
php防盗链的常用方法小结
2010/07/02 PHP
深入解析PHP中的(伪)多线程与多进程
2013/07/01 PHP
phpMyAdmin自动登录和取消自动登录的配置方法
2014/05/12 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
jquery.simple.tree插件 更简单,兼容性更好的无限树插件
2010/09/03 Javascript
js实现收缩菜单效果实例代码
2013/10/30 Javascript
javascript设计模式之解释器模式详解
2014/06/05 Javascript
jquery读取xml文件实现省市县三级联动的方法
2015/05/29 Javascript
javascript常用的方法整理
2015/08/20 Javascript
20分钟轻松创建自己的Bootstrap站点
2016/05/12 Javascript
Bootstrap 模态框(Modal)插件代码解析
2016/12/21 Javascript
JQuery页面随滚动条动态加载效果的简单实现(推荐)
2017/02/08 Javascript
详解如何在Vue2中实现组件props双向绑定
2017/03/29 Javascript
JS实现移动端实时监听输入框变化的实例代码
2017/04/12 Javascript
在页面中引入js的两种方法(推荐)
2017/08/29 Javascript
vue2和vue3的v-if与v-for优先级对比学习
2020/10/10 Javascript
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
Python中的列表生成式与生成器学习教程
2016/03/13 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
Django实现组合搜索的方法示例
2018/01/23 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
详解Python字典小结
2018/10/20 Python
Python给图像添加噪声具体操作
2019/03/03 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
Django xadmin安装及使用详解
2020/10/26 Python
python实现马丁策略的实例详解
2021/01/15 Python
CSS Grid布局教程之浏览器开启CSS Grid Layout汇总
2014/12/30 HTML / CSS
平面设计求职信
2014/03/10 职场文书
艺术节主持词
2014/04/02 职场文书
学校教师安全责任书
2014/07/23 职场文书
文体活动总结
2015/02/04 职场文书
母亲节感言
2015/08/03 职场文书
爱国主义教育主题班会
2015/08/13 职场文书
安全教育主题班会总结
2015/08/14 职场文书
医学生自荐信范文(2016精选篇)
2016/01/28 职场文书