1.创建一个适应大小的底层图片
2.读取需要拼接的图片
$dst_data=file_get_contents($dst_src);
$dst_img = imagecreatefromstring($dst_data);
3.把读取的图放到指定的位置,这里需要慢慢调试,使用下面的函数
imagecopymerge
4.出拼接后的图
header("Content-Type:image/jpeg");
imagejpeg($dst_img);

可能会用到的函数
imagecreatetruecolor //生成底图
file_get_contents //获取对应的图片
imagecreatefromstring //字符串转换成图片
imagecopyresampled //拷贝图片调整大小
imagecopymerge //合成图片

header("Content-type: image/jpeg");

//原始图像
$dst = "images/flower_1.jpg";

//得到原始图片信息
$dst_im = imagecreatefromjpeg($dst);
$dst_info = getimagesize($dst);

//水印图像
$src = "images/logo.gif";
$src_im = imagecreatefromgif($src);
$src_info = getimagesize($src);

//水印透明度
$alpha = 30;

//合并水印图片
imagecopymerge($dst_im,$src_im,$dst_info[0]-$src_info[0],$dst_info[1]-$src_info[1],0,0,$src_info[0],
$src_info[1],$alpha);

//输出合并后水印图片
imagejpeg($dst_im);
imagedestroy($dst_im);

imagedestroy($src_im);

下面是个简单的水印demo
<?php
function combine_image($image1,$image2,$c=0,$d=0)//$image1底层图片  $image2水印图片 $c合并X坐标 $d合并Y坐标
{$filename=time().".jpg";if(!$image1 || !$image2) return false;$aa=getimagesize($image1);$width=$aa["0"];$height=$aa["1"];$kind=$aa['mime'];$aa1=getimagesize($image2);$width1=$aa1["0"];$height1=$aa1["1"];$kind1=$aa1['mime'];//指定缩放出来的最大的宽度(也有可能是高度)$max=1000;//根据最大值为300,算出另一个边的长度,得到缩放后的图片宽度和高度if($width > $height){$width=$max;$height=$height*($max/$aa['0']);}else{$height=$max;$width=$width*($max/$aa['1']);}$im = imagecreatetruecolor($width,$height);if($kind=='image/jpeg'){$im1 = imagecreatefromjpeg($image1);}elseif($kind=='image/png'){$im1 = imagecreatefrompng($image1);}else{$im1 = imagecreatefromgif($image1);}if($kind1=='image/jpeg'){$im2 = imagecreatefromjpeg($image2);}elseif($kind1=='image/png'){$im2 = imagecreatefrompng($image2);}else{$im2 = imagecreatefromgif($image2);}imagecopyresampled($im, $im1, 0, 0, 0, 0,$width,$height,$aa['0'],$aa['1']);imagecopyresampled($im, $im2, $c, $d,0, 0,$width,$height,$aa1['0'],$aa1['1']);header('Content-Type: image/jpg');//imagejpeg($im,$filename);imagejpeg($im);imagedestroy($im);imagedestroy($im1);imagedestroy($im2);return $filename;
}
combine_image('1.jpg','2.png');
												

php GD库做水印功能,合并图片相关推荐

  1. Python学习笔记:使用PIL批量合成jpg+png图片,用于水印、合并图片,生成YOLO数据集+标注数据等等

    [Python学习笔记] 使用PIL,批量合成jpg+png图片,用于水印.合并图片,生成YOLO数据集+标注数据等等 起因:在了解很多关于YOLOv5的相关内容,于是尝试着去训练自己的游戏目标检测模 ...

  2. php的验证码要gd库,PHP通过GD库实现验证码功能

    本文实例讲述了PHP通过GD库实现验证码功能,结合实例形式分析了php验证码相关图片绘制.输出操作实现技巧.分享给大家供大家参考,具体如下: 首先看看实现的效果: 具体实现: /*PHP实现验证码*/ ...

  3. PHP GD库解析一张简单图片并输出

    这里只演示一下2种颜色值的图片,简单描述下概念. 首先要安装下GD库.否则下面的代码运行不了. $size = getimagesize('2.png'); // 获取图片大小 $res = imag ...

  4. php加水印功能,PHP图片加水印功能

    本篇文章主要介绍PHP图片加水印功能,感兴趣的朋友参考下,希望对大家有所帮助. 实例代码如下:<?php /** * 功能:给一张图片加上水印效果 * $i 要加水印效果的图片 * $t 水印文 ...

  5. Unity利用双相机巧做水印功能

    在unity项目中,经常会遇到截屏后分享图片的功能,为了防止内容的侵权和加强传播能力,我们需要水印功能.在unity中,如此这般实现: 1.需要有两个正交相机 2.两个相机采用不同的depth 3.d ...

  6. php使用gd库将文字转换成图片

    GD库是干什么用的呢!它是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片. <?php header("Content-type: ...

  7. 如何让图片在html中自动填充颜色,如何使用传图水印功能在图片上传时自动添加文字或图片水印?...

    下面我们来了解一下小蚂蚁编辑器的功能"传图水印"!开启传图水印功能后,所有上传的图片会自动添加文字或图片水印,并且支持自定义设置水印的展现形式. 一.开启传图水印 ① 鼠标移动到首 ...

  8. css背景图做水印,css给图片添加水印的方法

    css给图片添加水印的方法 发布时间:2020-10-27 09:55:46 来源:亿速云 阅读:103 作者:小新 这篇文章将为大家详细讲解有关css给图片添加水印的方法,小编觉得挺实用的,因此分享 ...

  9. PHP GD库 生成图片水印

    * index.php <?php /*** Created by PhpStorm.* User: mingzhanghui* Date: 9/24/2019* Time: 12:47*/in ...

最新文章

  1. 网络编程学习笔记(Unix域套接口地址)
  2. SQL*Loader之CASE8
  3. 医保费用监控指标体系建立(六)疾病指标分析
  4. python批量雷达图_python批量制作雷达图
  5. EM算法极其推广---EM算法的收敛性
  6. Java 时间处理 Instant
  7. 1005. 继续(3n+1)猜想 (25) PAT乙级真题
  8. 浅析error LNK2001: unresolved external symbol public: __thisc...
  9. 排列(permutation)的末尾 0 的个数
  10. 湖北警方打掉一制贩假酒团伙 涉案金额1.6亿元
  11. koa compose源码阅读
  12. 数据结构与算法之美 | 别怕,有我!KMP 算法详解
  13. Altera的IP核
  14. dedecms织梦模板|响应式粉红色母婴月嫂源码 母婴育儿类网站模板(自适应手机版)
  15. python药店销售数据分析_Python:某医院药品销售数据分析
  16. 70年,国人的奋斗史,计算机技术的追赶史
  17. 权益证明问题 —— Proof of Stake FAQ
  18. java全栈系列之JavaSE-稀释数组029
  19. 用HTML制作一个注册界面
  20. Position Calc TdPositionCanClose Error

热门文章

  1. matlab 中图的大小_关于matlab绘图中字体及图片大小等的设置
  2. 逻辑回归的参数计算:牛顿法,梯度下降法,随机梯度下降法
  3. 每日一算法7--35选7彩票程序
  4. 教妹学 Java:大有可为的集合
  5. AVPlayer与AVPlayerViewController媒体播放器
  6. 三极管概念工作原理及其应用
  7. windows下查看python下安装的opencv版本
  8. 作为一位资深Java程序员应该注意的几点
  9. 阿里云2022年双十一活动各云产品新购和续费优惠政策汇总
  10. Linux-core dump详解