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 相关文章推荐
php与paypal整合方法
Nov 28 PHP
PHP Class&Object -- PHP 自排序二叉树的深入解析
Jun 25 PHP
完美解决PHP中的Cannot modify header information 问题
Aug 12 PHP
获取URL文件名后缀
Oct 24 PHP
用PHP和Shell写Hadoop的MapReduce程序
Apr 15 PHP
非常全面的php日期时间运算汇总
Nov 04 PHP
YII2框架中使用yii.js实现的post请求
Apr 09 PHP
PHP实现的简单异常处理类示例
May 04 PHP
php面向对象的用户登录身份验证
Jun 08 PHP
PHP中模糊查询并关联三个select框
Jun 19 PHP
php实现算术验证码功能
Dec 05 PHP
Laravel 模型关联基础教程详解
Sep 17 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
eaglephp使用微信api接口开发微信框架
2014/01/09 PHP
destoon在360浏览器下出现用户被强行注销的解决方法
2014/06/26 PHP
PHP利用APC模块实现大文件上传进度条的方法
2015/10/29 PHP
php将文件夹打包成zip文件的简单实现方法
2016/10/04 PHP
jQuery中:input选择器用法实例
2015/01/03 Javascript
使用javascript实现雪花飘落的效果
2015/01/13 Javascript
js实现点击图片改变页面背景图的方法
2015/02/28 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
2016/03/19 Javascript
AngularJS入门教程之REST和定制服务详解
2016/08/19 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
JavaScript 最佳实践:帮你提升代码质量
2016/12/03 Javascript
鼠标经过出现气泡框的简单实例
2017/03/17 Javascript
JavaScript算法教程之sku(库存量单位)详解
2017/06/29 Javascript
jQuery Pagination分页插件_动力节点Java学院整理
2017/07/17 jQuery
Vue-Router进阶之滚动行为详解
2017/09/13 Javascript
JavaScript对JSON数组简单排序操作示例
2019/01/31 Javascript
Vue+axios+WebApi+NPOI导出Excel文件实例方法
2019/06/05 Javascript
微信小程序实现点击空白隐藏的方法示例
2019/08/13 Javascript
python通过自定义isnumber函数判断字符串是否为数字的方法
2015/04/23 Python
详解Python编程中基本的数学计算使用
2016/02/04 Python
Python连接数据库学习之DB-API详解
2017/02/07 Python
PyQt5实现让QScrollArea支持鼠标拖动的操作方法
2019/06/19 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
基于python实现文件加密功能
2020/01/06 Python
使用PyTorch将文件夹下的图片分为训练集和验证集实例
2020/01/08 Python
Python安装whl文件过程图解
2020/02/18 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
美国隐形眼镜网:Major Lens
2018/02/09 全球购物
校本教研工作方案
2014/01/14 职场文书
党员自我剖析材料
2014/08/31 职场文书
幼儿园奖惩制度范本
2015/08/05 职场文书
大学校园招聘会感想
2015/08/10 职场文书
2016优秀班主任个人先进事迹材料
2016/02/26 职场文书
浅谈什么是SpringBoot异常处理自动配置的原理
2021/06/21 Java/Android
关于windows server 2012 DC 环境 重启后蓝屏代码:0xc00002e2的问题
2022/05/25 Servers
Linux中sftp常用命令整理
2022/06/28 Servers