<?php
$dst_path = '1.jpg';//目标图片
$src_path = 'logo1.png';//水印图片//创建图片的实例
$dst = imagecreatefromstring(file_get_contents($dst_path));
$src = imagecreatefromstring(file_get_contents($src_path));
//获取水印图片的宽高
list($src_w, $src_h) = getimagesize($src_path);
//将水印图片复制到目标图片上,最后个参数50是设置透明度,这里实现半透明效果,两个20是控制水印坐标位置
imagecopymerge($dst, $src, 20, 20, 0, 0, $src_w, $src_h, 50);
//如果水印图片本身带透明色,则使用imagecopy方法
//imagecopy($dst, $src, 10, 10, 0, 0, $src_w, $src_h);
//输出图片
list($dst_w, $dst_h, $dst_type) = getimagesize($dst_path);
switch ($dst_type) {case 1://GIFheader('Content-Type: image/gif');imagegif($dst);break;case 2://JPGheader('Content-Type: image/jpeg');imagejpeg($dst);break;case 3://PNGheader('Content-Type: image/png');imagepng($dst);break;default:break;
}
imagedestroy($dst);
imagedestroy($src);?>

效果:

转载于:https://www.cnblogs.com/jianqingwang/p/6045417.html

PHP学习笔记:利用gd库给图片打图片水印相关推荐

  1. php gd图片验证,php笔记之GD库图片创建/简单验证码

    燕十八 公益PHP培训 课堂地址:YY频道88354001 学习社区:www.zixue.it php画图:比如说验证码,缩略图,加水印都要用到GD库,所以要开启gd2库,才能用 首先找到php.in ...

  2. php 利用GD库在制定图片上添加文字

    我们可以利用php的gd库扩展来对我们的图片进行处理,例如是生成缩略图,对图片进行裁切,和本章将说的在图片添加文字. 1.首先我们需要接受到我们需要的文字:$key = $_GET['key'];具体 ...

  3. Python学习笔记:requests库

    Python学习笔记:requests库 利用requests这个功能强大的网络请求库,可以像浏览器一样发送各种HTTP请求来获取网站的数据. 一.运行环境 1.系统版本:Windows 10 2.P ...

  4. php gd 坐标,【PHP】GD库笔记 初探GD库的坐标

    昨天在用GD库的imagettftext在图片上写字的时候,发现写字的坐标并不是很精确的按照指定的参数的位置插入字体的,一直觉得很诡异.由于GD库中很多画图操作都是以坐标为基础的,因而就花了点时间了解 ...

  5. 机器学习knn算法学习笔记使用sklearn库 ,莺尾花实例

    ** 机器学习knn算法学习笔记使用sklearn库 ,莺尾花实例. 具体knn算法是怎样的我这里就不再详细论述.在这里我注意总结我使用knn算法进行一个分类的分析 ** 分析过程 1.前期准备 引入 ...

  6. sizzle.js学习笔记利用闭包模拟实现数据结构:字典(Map)

    sizzle.js学习笔记利用闭包模拟实现数据结构:字典(Map) 这几天学习和查看了jQuery和Property这两个很流行的前端库的御用选择器组件Sizzle.js的源代码,收获还是相对多的!之 ...

  7. STM32 HAL库学习笔记2 HAL库介绍

    STM32 HAL库学习笔记2 HAL库介绍 CMSIS标准 一.再次认识HAL库 HAL库设计思想 HAL库实现方式 以GPIO模块为例 GPIO外设数据类型 GPIO外设接口函数 二.使用HAL库 ...

  8. amazeui学习笔记--css(HTML元素4)--图片image

    amazeui学习笔记--css(HTML元素4)--图片image 一.总结 1.响应式图片:随着页面宽度而变化 .am-img-responsive class. <img src=&quo ...

  9. 多线程编程学习笔记——任务并行库(二)

    接上文 多线程编程学习笔记--任务并行库(一) 三.   组合任务 本示例是学习如何设置相互依赖的任务.我们学习如何创建一个任务的子任务,这个子任务必须在父任务执行结束之后,再执行. 1,示例代码如下 ...

  10. 多线程编程学习笔记——任务并行库(三)

    接上文 多线程编程学习笔记--任务并行库(一) 接上文 多线程编程学习笔记--任务并行库(二) 六.   实现取消选项 本示例学习如何实现基于Task的异步操作进行取消流程,以及在任务真正运行前如何知 ...

最新文章

  1. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(13)-系统日志和异常的处理③
  2. Create an Apex class that returns contacts based on incoming parameters
  3. settings.xml 文件配置
  4. mathtype6在word2019中闪退的问题
  5. 农信互联X联网副总冯兴臣:关于互农产品的一些思考
  6. mysql日志恢复数据_Mysql 通过binlog日志恢复数据
  7. HOL中的四种排序,Order By、Sort By、Distribute By、Cluster By
  8. FetchType与FetchMode的区别
  9. 手把手教你求职进入BAT
  10. 用一个中介对象来封装一系列的对象交互
  11. 计算机等级考试java题型_计算机等级考试报考建议
  12. java轮训算法_负载均衡轮询算法实现疑问
  13. 双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计
  14. 【Stanford Online】Engineering: Algorithms1 NO.4 The Master Method
  15. [原创]Java开发如何在线打开Word文件
  16. 大一线性代数知识点总结
  17. 免费手机电脑同屏神器——Mirroid
  18. 手撕Buck!Buck公式推导过程
  19. linux 修复 gpt分区表,修复GPT分区表
  20. android 函数式编程,思想交融,Android中的函数式编程(2):什么是函数式编程...

热门文章

  1. 实用ExtJS教程100例-001:开天辟地的Hello World
  2. 遍历查询+从非根节点开始遍历+从下向上遍历树+从层次化查询中删除节点和分支...
  3. mac安装xdebug
  4. #define和inline 的区别
  5. json数据交互——@RequestBody与@ResponseBody
  6. 首次启动优美新手指引tip
  7. 二年级计算机考试题,二年级计算机笔测试题(XX-XX第一学期
  8. springboot图片上传和显示_Jeewx-Boot 1.1 版本发布,基于SpringBoot的开源微信管家系统...
  9. excel打开2个独立窗口_喜欢用华为手机拍照,记得打开这2个开关,能让照片更加清晰...
  10. html2canvas提升像素,jspdf + html2canvas 实现html转pdf (提高分辨率版本)