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 相关文章推荐
Search File Contents PHP 搜索目录文本内容的代码
Feb 21 PHP
PHP中的session永不过期的解决思路及实现方法分享
Apr 20 PHP
PHP取得一个类的属性和方法的实现代码
May 22 PHP
Php Ctemplate引擎开发相关内容
Mar 03 PHP
php中opendir函数用法实例
Nov 15 PHP
php实现curl模拟ftp上传的方法
Jul 29 PHP
thinkphp框架下实现登录、注册、找回密码功能
Apr 06 PHP
php读取qqwry.dat ip地址定位文件的类实例代码
Nov 15 PHP
PHP读取zip文件的方法示例
Nov 17 PHP
解决在laravel中auth建立时候遇到的问题
Oct 15 PHP
Yii2框架中一些折磨人的坑
Dec 15 PHP
关于PHP中interface的用处详解
Jul 26 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
smarty缓存用法分析
2014/12/16 PHP
PHP文件操作方法汇总
2015/07/01 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
PHP的PDO操作简单示例
2016/03/30 PHP
JavaScript Object的extend是一个常用的功能
2009/12/02 Javascript
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
vue2.0父子组件间通信的实现方法
2017/04/19 Javascript
简单实现js放大镜效果
2017/07/24 Javascript
微信小程序 自定义消息提示框
2017/08/06 Javascript
react-native组件中NavigatorIOS和ListView结合使用的方法
2017/09/30 Javascript
详解如何实现一个简单的Node.js脚手架
2017/12/04 Javascript
JavaScript基于面向对象实现的猜拳游戏
2018/01/03 Javascript
Nuxt.js实战详解
2018/01/18 Javascript
Vue插值、表达式、分隔符、指令知识小结
2018/10/12 Javascript
mock.js实现模拟生成假数据功能示例
2019/01/15 Javascript
elementUI Tree 树形控件的官方使用文档
2019/04/25 Javascript
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
使用python编写脚本获取手机当前应用apk的信息
2014/07/21 Python
Python网络编程之TCP与UDP协议套接字用法示例
2018/02/02 Python
python中的turtle库函数简单使用教程
2018/07/23 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
基于Python+Appium实现京东双十一自动领金币功能
2019/10/31 Python
jupyter notebook实现显示行号
2020/04/13 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
Python 内存管理机制全面分析
2021/01/16 Python
python asyncio 协程库的使用
2021/01/21 Python
html5 学习简单的拾色器
2010/09/03 HTML / CSS
美国最大的网络男装服装品牌:Bonobos
2017/05/25 全球购物
利群广告词
2014/03/20 职场文书
创先争优演讲稿
2014/09/15 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
2015元旦节寄语
2014/12/08 职场文书
上课睡觉万能检讨书
2015/02/17 职场文书
高中诗歌鉴赏教学反思
2016/02/16 职场文书
AngularJS实现多级下拉框
2022/03/25 Javascript