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 和 MySQL 基础教程(一)
Oct 09 PHP
默默小谈PHP&MYSQL分页原理及实现
Jan 02 PHP
ThinkPHP3.0略缩图不能保存到子目录的解决方法
Sep 30 PHP
php读取mysql中文数据出现乱码的解决方法
Aug 16 PHP
zend framework文件上传功能实例代码
Dec 25 PHP
php mail to 配置详解
Jan 16 PHP
CI框架安全类Security.php源码分析
Nov 04 PHP
PHP实现的网站目录扫描索引工具
Sep 08 PHP
php set_include_path函数设置 include_path 配置选项
Oct 30 PHP
thinkphp中AJAX返回ajaxReturn()方法分析
Dec 06 PHP
php使用变量动态创建类的对象用法示例
Feb 06 PHP
php命名空间设计思想、用法与缺点分析
Jul 17 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判断是否为空的几个函数对比
2015/04/21 PHP
PHP+Ajax 检测网络是否正常实例详解
2016/12/16 PHP
thinkPHP5.0框架自动加载机制分析
2017/03/18 PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
2017/08/02 PHP
php读取本地json文件的实例
2018/03/07 PHP
Ajax中解析Json的两种方法对比分析
2015/06/25 Javascript
实例详解jQuery表单验证插件validate
2016/01/18 Javascript
JS模仿手机端九宫格登录功能实现代码
2016/04/28 Javascript
底部悬浮通栏可以关闭广告位的实现方法
2016/06/01 Javascript
jQuery事件用法详解
2016/10/06 Javascript
利用python分析access日志的方法
2016/10/26 Javascript
javascript 单例模式详解及简单实例
2017/02/14 Javascript
jQuery实现的简单拖动层示例
2017/02/22 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
vue-rx的初步使用教程
2018/09/21 Javascript
详解React 的几种条件渲染以及选择
2018/10/23 Javascript
bootstrap table实现横向合并与纵向合并
2019/07/18 Javascript
javascript设计模式 ? 建造者模式原理与应用实例分析
2020/04/10 Javascript
vue 导航锚点_点击平滑滚动,导航栏对应变化详解
2020/08/10 Javascript
zbar解码二维码和条形码示例
2014/02/07 Python
python自动化测试之从命令行运行测试用例with verbosity
2014/09/28 Python
Python编程实现双击更新所有已安装python模块的方法
2017/06/05 Python
Python调用微信公众平台接口操作示例
2017/07/08 Python
浅谈用VSCode写python的正确姿势
2017/12/16 Python
解决python super()调用多重继承函数的问题
2019/06/26 Python
Python PyQt5 Pycharm 环境搭建及配置详解(图文教程)
2019/07/16 Python
python selenium实现发送带附件的邮件代码实例
2019/12/10 Python
python 实现查询Neo4j多节点的多层关系
2019/12/23 Python
奥地利智能家居和智能生活网上商店:tink.at
2019/10/07 全球购物
俞敏洪励志演讲稿
2014/04/29 职场文书
骨干教师考核评语
2014/12/31 职场文书
2015年出纳个人工作总结
2015/04/02 职场文书
幼儿园食品安全责任书
2015/05/08 职场文书
幼儿教师师德培训心得体会
2016/01/09 职场文书
2019关于实习生工作安排及待遇的管理方案!
2019/07/16 职场文书
《火纹风花雪月无双》预告“神秘雇佣兵” 紫发剑客
2022/04/13 其他游戏