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删除特定数组内容并且重建数组索引的方法.
Mar 25 PHP
使用PHP遍历文件夹与子目录的函数代码
Sep 26 PHP
114啦源码(114la)不能生成地方房产和地方报刊问题4级页面0字节的解决方法
Jan 12 PHP
组合算法的PHP解答方法
Feb 04 PHP
ThinkPHP3.2.2的插件控制器功能简述
Jul 09 PHP
PHP类型约束用法示例
Sep 28 PHP
php原生导出excel文件的两种方法(推荐)
Nov 19 PHP
PHP-CGI远程代码执行漏洞分析与防范
May 07 PHP
php7函数,声明,返回值等新特性介绍
May 25 PHP
实例讲解PHP验证邮箱是否合格
Jan 28 PHP
Windows服务器中PHP如何安装redis扩展
Sep 27 PHP
Yii框架getter与setter方法功能与用法分析
Oct 22 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
PHP中使用GD库创建圆形饼图的例子
2014/11/19 PHP
实例讲解PHP验证邮箱是否合格
2019/01/28 PHP
PHP应用跨时区功能的实现方法
2019/03/21 PHP
JavaScript中实现块作用域的方法
2010/04/01 Javascript
javascript实现单击和双击并存的方法
2014/12/13 Javascript
理解AngularJs指令
2015/12/10 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
深入浅析jQuery对象$.html
2016/08/22 Javascript
jquery遍历标签中自定义的属性方法
2016/09/17 Javascript
AngularJS使用ng-app自动加载bootstrap框架问题分析
2017/01/04 Javascript
JavaScript中的toString()和toLocaleString()方法的区别
2017/02/15 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
基于JQuery的Ajax方法使用详解
2017/08/16 jQuery
详解如何使用PM2将Node.js的集群变得更加容易
2017/11/15 Javascript
vue2.0之多页面的开发的示例
2018/01/30 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
在 Vue.js中优雅地使用全局事件的方法
2019/02/01 Javascript
swiper Scrollbar滚动条组件详解
2019/09/08 Javascript
vue之延时刷新实例
2019/11/14 Javascript
[02:14]DOTA2英雄基础教程 修补匠
2013/12/23 DOTA
python入门教程之识别验证码
2017/03/04 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
scrapy数据存储在mysql数据库的两种方式(同步和异步)
2020/02/18 Python
获取python运行输出的数据并解析存为dataFrame实例
2020/07/07 Python
html5的pushstate以及监听浏览器返回事件的实现
2020/08/11 HTML / CSS
雅诗兰黛(Estee Lauder)英国官方网站:世界顶级化妆品牌
2016/12/29 全球购物
世界上最大的冷却器制造商:Igloo Coolers
2019/07/23 全球购物
屈臣氏菲律宾官网:Watsons菲律宾
2020/06/30 全球购物
书法培训心得体会
2014/01/05 职场文书
拓展训练激励口号
2014/06/17 职场文书
设计专业毕业生求职信
2014/06/25 职场文书
大四优秀党员个人民主评议
2014/09/19 职场文书
2014年艾滋病防治工作总结
2014/12/10 职场文书
职位证明模板
2015/06/23 职场文书
浪漫婚礼主持词开场白
2015/11/24 职场文书