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 相关文章推荐
PHP4与PHP3中一个不兼容问题的解决方法
Oct 09 PHP
php 图片加水印与上传图片加水印php类
May 12 PHP
PHP文章按日期(月日)SQL归档语句
Nov 29 PHP
ThinkPHP Mobile使用方法简明教程
Jun 18 PHP
php json_encode()函数返回json数据实例代码
Oct 10 PHP
Windows下的PHP安装pear教程
Oct 24 PHP
Symfony2学习笔记之系统路由详解
Mar 17 PHP
linux下php上传文件注意事项
Jun 11 PHP
php下载文件,添加响应头的简单实例
Sep 22 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
Oct 08 PHP
PHP实现腾讯与百度坐标转换
Aug 05 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
Oct 25 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
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
2013/04/22 PHP
PHP使用Face++接口开发微信公众平台人脸识别系统的方法
2015/04/17 PHP
Yii2中OAuth扩展及QQ互联登录实现方法
2016/05/16 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
PHP7内核CGI与FastCGI详解
2019/04/14 PHP
JavaScript单元测试ABC
2012/04/12 Javascript
在javascript中对于DOM的加强
2013/04/11 Javascript
js通过更改按钮的显示样式实现按钮的滑动效果
2014/04/23 Javascript
jQuery实现鼠标滚轮动态改变样式或效果
2015/01/05 Javascript
jQuery实现的仿select功能代码
2015/08/19 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
Bootstrap的popover(弹出框)2秒后定时消失的实现代码
2017/02/27 Javascript
Nodejs 获取时间加手机标识的32位标识实现代码
2017/03/07 NodeJs
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
Javascript防止图片拉伸的自适应处理方法
2017/12/26 Javascript
vue-cli3 karma单元测试的实现
2019/01/18 Javascript
Javascript执行上下文顺序的深入讲解
2020/11/04 Javascript
js实现纯前端压缩图片
2020/11/16 Javascript
Python中使用ConfigParser解析ini配置文件实例
2014/08/30 Python
在Python中使用__slots__方法的详细教程
2015/04/28 Python
Python selenium 三种等待方式解读
2016/09/15 Python
python网络编程调用recv函数完整接收数据的三种方法
2017/03/31 Python
解决pycharm界面不能显示中文的问题
2018/05/23 Python
TensorFlow 模型载入方法汇总(小结)
2018/06/19 Python
python实现将读入的多维list转为一维list的方法
2018/06/28 Python
django 装饰器 检测登录状态操作
2020/07/02 Python
澳大利亚百货商店中销量第一的商务衬衫品牌:Van Heusen
2018/07/26 全球购物
C#公司笔试题
2014/03/28 面试题
广告学专业毕业生自荐信
2013/09/24 职场文书
电子信息工程专业推荐信
2014/02/14 职场文书
大学军训感言400字
2014/03/11 职场文书
医院院务公开实施方案
2014/05/03 职场文书
政府法律服务方案
2014/06/14 职场文书
2015年五四青年节演讲稿
2015/03/18 职场文书
36个正则表达式(开发效率提高80%)
2021/11/17 Javascript
mysql数据库隔离级别详解
2022/06/16 MySQL