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中变量及部分适用方法
Mar 27 PHP
PHP 基本语法格式
Dec 15 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
用PHP读取和编写XML DOM的实现代码
Feb 03 PHP
php打造属于自己的MVC框架
Mar 07 PHP
session 加入redis的实现代码
Jul 15 PHP
thinkPHP5实现的查询数据库并返回json数据实例
Oct 23 PHP
使用PHP访问RabbitMQ消息队列的方法示例
Jun 06 PHP
win7 wamp 64位 php环境开启curl服务遇到的问题及解决方法
Sep 16 PHP
php实现微信公众号企业转账功能
Oct 01 PHP
解决laravel上传图片之后,目录有图片,但是访问不到(404)的问题
Oct 14 PHP
thinkphp5 模型实例化获得数据对象的教程
Oct 18 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
解析php入库和出库
2013/06/25 PHP
利用js对象弹出一个层
2008/03/26 Javascript
jquery 表单下所有元素的隐藏
2009/07/25 Javascript
js监听表单value的修改同步问题,跨浏览器支持
2009/12/31 Javascript
jquery checkbox全选、取消全选实现代码
2010/03/05 Javascript
js 回车提交表单两种实现方法
2012/12/31 Javascript
Js实现滚动变色的文字效果
2014/06/16 Javascript
node.js中的favicon.ico请求问题处理
2014/12/15 Javascript
浅谈JavaScript 的执行顺序
2015/08/07 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
JSON与XML的区别对比及案例应用
2016/11/11 Javascript
Bootstrap Modal遮罩弹出层代码分享
2016/11/21 Javascript
详解vue 中使用 AJAX获取数据的方法
2017/01/18 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
vue中v-model动态生成的实例详解
2017/10/27 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
vue权限管理系统的实现代码
2019/01/17 Javascript
element日历calendar组件上月、今天、下月、日历块点击事件及模板源码
2020/07/27 Javascript
vue项目接口域名动态获取操作
2020/08/13 Javascript
python 写的一个爬虫程序源码
2016/02/28 Python
详解Python实现按任意键继续/退出的功能
2016/08/19 Python
Python 使用PIL numpy 实现拼接图片的示例
2018/05/08 Python
python正则表达式匹配不包含某几个字符的字符串方法
2019/07/23 Python
python异常触发及自定义异常类解析
2019/08/06 Python
python实现本地批量ping多个IP的方法示例
2019/08/07 Python
flask框架蓝图和子域名配置详解
2020/01/25 Python
Pytorch对Himmelblau函数的优化详解
2020/02/29 Python
加拿大快时尚零售商:Ardene
2018/02/14 全球购物
商务英语求职自荐信范文
2013/12/24 职场文书
领导班子四风问题个人对照检查材料
2014/10/04 职场文书
2014年施工员工作总结
2014/11/18 职场文书
教师党员个人总结
2015/02/10 职场文书
2016年幼儿园教师师德承诺书
2016/03/25 职场文书
导游词之无锡梅园
2019/11/28 职场文书
详解Python中*args和**kwargs的使用
2022/04/07 Python
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
2022/12/24 MySQL