php加水印的代码(支持半透明透明打水印,支持png透明背景)


Posted in PHP onJanuary 17, 2013
//原始图像 
       $dst = "/upload/20120914/20120914040740-0.jpg"; //注意图片路径要正确 
       //得到原始图片信息 
       $dst_info = getimagesize($dst);  
       switch ($dst_info[2]) 
       { 
        case 1: 
        $dst_im =imagecreatefromgif($dst);break; 
        case 2: 
        $dst_im =imagecreatefromjpeg($dst);break; 
        case 3: 
        $dst_im =imagecreatefrompng($dst);break; 
        case 6: 
        $dst_im =imagecreatefromwbmp($dst);break; 
        default: 
        die("不支持的文件类型1");exit; 
       } 
       //水印图像 
       $src = "/images/shuiyin.png"; //注意路径要写对 
       $src_info = getimagesize($src); 
       switch ($src_info[2]) 
       { 
        case 1: 
        $src_im =imagecreatefromgif($src);break; 
        case 2: 
        $src_im =imagecreatefromjpeg($src);break; 
        case 3: 
        $src_im =imagecreatefrompng($src);break; 
        case 6: 
        $src_im =imagecreatefromwbmp($src);break; 
        default: 
        die("不支持的文件类型1");exit; 
       }        //半透明格式水印 
       //$alpha = 50;//水印透明度 
       //imagecopymerge($dst_im,$src_im,$dst_info[0]-$src_info[0]-10,$dst_info[1]-$src_info[1]-10,0,0,$src_info[0],$src_info[1],$alpha); 
       //支持png本身透明度的方式 
       imagecopy($dst_im,$src_im,$dst_info[0]-$src_info[0]-10,$dst_info[1]-$src_info[1]-10,0,0,$src_info[0],$src_info[1]); 
       //保存图片 
       switch ($dst_info[2]){ 
        case 1: 
        imagegif($dst_im,$dst);break; 
        case 2: 
        imagejpeg($dst_im,$dst);break; 
        case 3: 
        imagepng($dst_im,$dst);break; 
        case 6: 
        imagewbmp($dst_im,$dst);break; 
        default: 
        die("不支持的文件类型2");exit; 
       } 
       imagedestroy($dst_im); 
       imagedestroy($src_im);  
PHP 相关文章推荐
建立文件交换功能的脚本(二)
Oct 09 PHP
php仿ZOL分页类代码
Oct 02 PHP
PHP获取当前页面完整URL的实现代码
Jun 10 PHP
codeigniter使用技巧批量插入数据实例方法分享
Dec 31 PHP
PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
Apr 08 PHP
ThinkPHP之getField详解
Jun 20 PHP
PHPStrom 新建FTP项目以及在线操作教程
Oct 16 PHP
PHP实现微信支付(jsapi支付)流程步骤详解
Mar 15 PHP
PHP实现动态压缩js与css文件的方法
May 02 PHP
Laravel中10个有用的用法小结
May 06 PHP
PHP常用的类封装小结【4个工具类】
Jun 28 PHP
PHP序列化和反序列化深度剖析实例讲解
Dec 29 PHP
在windows服务器开启php的gd库phpinfo中未发现
Jan 13 #PHP
mysqli_set_charset和SET NAMES使用抉择及优劣分析
Jan 13 #PHP
PHP读取xml方法介绍
Jan 12 #PHP
用PHP编写和读取XML的几种方式
Jan 12 #PHP
php图片的裁剪与缩放生成符合需求的缩略图
Jan 11 #PHP
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
Jan 11 #PHP
php判断上传的Excel文件中是否有图片及PHPExcel库认识
Jan 11 #PHP
You might like
dedecms采集中可以过滤多行代码的正则表达式
2007/03/17 PHP
php生成局部唯一识别码LUID的代码
2012/10/06 PHP
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
浅谈PHP值mysql操作类
2016/06/29 PHP
PHP数据对象映射模式实例分析
2019/03/29 PHP
php session_decode函数用法讲解
2019/05/26 PHP
JavaScript打开word文档的实现代码(c#)
2012/04/16 Javascript
js实现鼠标经过时图片滚动停止的方法
2015/02/16 Javascript
js+html5实现canvas绘制镂空字体文本的方法
2015/06/05 Javascript
基于jQuery实现的仿百度首页滑动选项卡效果代码
2015/11/16 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
深入浅析JavaScript中的Function类型
2016/07/09 Javascript
火狐和ie下获取javascript 获取event的方法(推荐)
2016/11/26 Javascript
JS组件系列之MVVM组件构建自己的Vue组件
2017/04/28 Javascript
详解Vue2.x-directive的学习笔记
2017/07/17 Javascript
Vue实现导出excel表格功能
2018/03/30 Javascript
vue项目每30秒刷新1次接口的实现方法
2018/12/04 Javascript
基于vue实现一个禅道主页拖拽效果
2019/05/27 Javascript
解决layui调用自定义方法提示未定义的问题
2019/09/14 Javascript
[01:50]《我与DAC》之玩家:iG夺冠时的那面红旗
2018/03/29 DOTA
Python实现的百度站长自动URL提交小工具
2014/06/27 Python
Python中执行存储过程及获取存储过程返回值的方法
2017/10/07 Python
解决python3捕获cx_oracle抛出的异常错误问题
2018/10/18 Python
Python模块/包/库安装的六种方法及区别
2020/02/24 Python
Python AutoCAD 系统设置的实现方法
2020/04/01 Python
Python函数的迭代器与生成器的示例代码
2020/06/18 Python
Python如何telnet到网络设备
2021/02/18 Python
html5 Canvas实现图片旋转的示例
2018/01/15 HTML / CSS
英国最大的LED专业零售商:Led Hut
2018/03/16 全球购物
Topshop美国官网:英国快速时尚品牌
2019/05/16 全球购物
市场开发与营销专业求职信
2013/12/31 职场文书
2015年反腐倡廉工作总结
2015/05/14 职场文书
个人收入证明范本
2015/06/12 职场文书
校园运动会广播稿
2015/08/19 职场文书
Innodb存储引擎中的后台线程详解
2022/04/03 MySQL