php图片加水印,php文字水印,php平铺水印,php图片水印,php图片添加图文 平铺水印。

**图片添加文字水印**

```php

$bigImgPath = '08.jpg';

$img = imagecreatefromstring(file_get_contents($bigImgPath));

$color = imagecolorallocatealpha($img,255,255,255,60);

$font = './zzgkt.ttf';//字体

$fontSize = 18; //字体大小

$circleSize = 15; //旋转角度

$left = 50; //左边距

$top = 200; //顶边距

$str = '未来往事[www.fity.cn]';

imagefttext($img, $fontSize, $circleSize, $left, $top, $color, $font, $str);

//imagettftext($img,$fontSize,$circleSize,$left,$top,$color,$font,$str);

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

imagejpeg($img);

imagedestroy($img);

```

效果预览:

[![图片添加文字水印](https://www.fity.cn/usr/uploads/2017/03/1490000384_3298d4e5.png "图片添加文字水印")](https://www.fity.cn/usr/uploads/2017/03/1490000384_3298d4e5.png "图片添加文字水印")

**图片合成 图片水印**

```php

$bigImgPath = '08.jpg';

$qCodePath = 'cli.png';

$img = imagecreatefromstring(file_get_contents($bigImgPath)); //或者imagecreatefromjpeg

$qCodeImg = imagecreatefrompng($qCodePath);

list($qCodeWidth, $qCodeHight, $qCodeType) = getimagesize($qCodePath);

$fontSize = 18; //字体大小

$circleSize = 15; //旋转角度

$left = 308; //左边距

$top = 258; //顶边距

// imagecopymerge使用注解

imagecopymerge($img, $qCodeImg, $left, $top, 0, 0, $qCodeWidth, $qCodeHight, 100);

list($bigWidth, $bigHight, $bigType) = getimagesize($bigImgPath);

switch ($bigType) {

case 1: //gif

header('Content-Type:image/gif');

imagegif($img);

break;

case 2: //jpg

header('Content-Type:image/jpg');

imagejpeg($img);

break;

case 3: //jpg

header('Content-Type:image/png');

imagepng($img);

break;

default:

# code...

break;

}

imagedestroy($img);

imagedestroy($qcodeImg);

```

效果预览:

[![图片合成图片水印](https://www.fity.cn/usr/uploads/2017/03/1490000384_25587af3.png "图片合成图片水印")](https://www.fity.cn/usr/uploads/2017/03/1490000384_25587af3.png "图片合成图片水印")

关于水印图片不透明可以参考本博客另外一篇文章《[imagecopymerge合成图片 黑色背景问题解决](https://www.fity.cn/post/609.html "imagecopymerge合成图片 黑色背景问题解决")》

**文字水印平铺 图片水印平铺**

**方法一:相对来说该方式较为传统~~~**

```php

//echo $this->filePath;

$groundImage = './p1.jpg';

if(!empty($groundImage) && file_exists($groundImage)){

$ground_info = getimagesize($groundImage);

$ground_w = $ground_info[0];//取得背景图片的宽

$ground_h = $ground_info[1];//取得背景图片的高

switch($ground_info[2])//取得背景图片的格式

{

case 1:$ground_im = imagecreatefromgif($groundImage);break;

case 2:$ground_im = imagecreatefromjpeg($groundImage);break;

case 3:$ground_im = imagecreatefrompng($groundImage);break;

default:die($formatMsg);

}

}else{

die("需要加水印的图片不存在!");

}

$logo = 'water_logo.png';

$watermark = imagecreatefrompng($logo);

$x_length = $ground_w+260; //x轴总长度

$y_length = $ground_h+190; //y轴总长度

$x_padding = 15; //x轴与y轴起始位置边距

$y_padding = 15;

//imagecopymerge_alpha($ground_im, $watermark, $x, $y, 0, 0, 1920, 1000, 100);

for ($x=$x_padding;$xnewimage( 140, 80, new imagickpixel( "none" ) );

$draw = new imagickdraw();

$draw->setfillcolor(new imagickpixel( "grey" ));

$draw->setgravity(imagick::gravity_northwest);

$draw->annotation(10,10 ,'copyright');

$draw->setgravity(imagick::gravity_southeast);

$draw->annotation(5,15 ,'copyright');

$im->drawimage( $draw);

$image = $image->textureimage($im);

$image->compositeimage($image,imagick::composite_copy,0,0);

header( "content-type: image/{$image->getimageformat()}" );

$image->writeimage('wmark_text_tiled.jpg');

$image->clear();

$image->destroy();

```

效果预览:

[![平铺水印](https://www.fity.cn/usr/uploads/2017/03/1490000384_87932caa.png "平铺水印")](https://www.fity.cn/usr/uploads/2017/03/1490000384_87932caa.png "平铺水印")

**PS:**使用该方式需要先配置php环境支持imagick扩展类库,类库下载:

http://pecl.php.net/package/imagick

**综合Demo示例**

[点击打开,建议使用手机浏览器打开测试](https://www.fity.cn/demo/cropper/ "点击打开,建议使用手机浏览器打开测试")

[![综合demo](https://www.fity.cn/usr/uploads/2017/03/1489832104_56825f64.png "综合demo")](https://www.fity.cn/usr/uploads/2017/03/1489832104_56825f64.png "综合demo")

最后更新于 2019-07-10 19:24:09 并被添加「php函数 图片处理」标签,已有 3216 位童鞋阅读过。

本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处

相关文章

php图片平铺,php平铺水印/图片添加水印/图片合成相关推荐

  1. java怎么让图片铺满_Java实现水印铺满图片

    public class ImageMarkUtil { /** 水印透明度 */ private static float alpha = 0.5f; /** 水印图片旋转角度 */ private ...

  2. css 背景平铺 控制范围,css如何让背景图片平铺?css背景图片平铺四种方式介绍...

    在网页设计的过程中,有时候可能会要求背景图片平铺,因为这样会让整个网页看起来比较好看,图片平铺可以不用具体设置body宽度和高度大小,就可以直接将图片平铺整个页面,那么,如何让背景图片平铺呢?接下来本 ...

  3. html中背景不平铺怎么写,css怎么让背景图片不平铺?

    在使用background属性设置背景图片时,背景图片默认是重复平铺的.css怎么让背景图片不平铺?下面本篇文章就来给大家介绍一下使用CSS设置背景图片不平铺的方法,希望对大家有所帮助. 在CSS中, ...

  4. Java实现在线word文档添加铺满效果文字水印,文字可换行

    Java实现在线word文档添加铺满效果文字水印,文字可换行 使用插件Aspose.words for java 生成水印的工具类 调用生成水印方法 需求:为在线预览的word文档添加自定义水印,还要 ...

  5. vue组件中设置背景图片,随着页面高度的增加,背景图片能够不断延伸铺满屏幕

    在做项目的时候,想要实现背景图片将整个页面铺满,等内容变多,高度超过屏幕高度的时候,背景图片仍然能够完全铺满. 第一种方式:(不是想要的) 第一种情况就是最外层设置一个div盒子,宽度100%,高度1 ...

  6. C#图片处理示例(裁剪,缩放,清晰度,水印)

    前言 需求源自项目中的一些应用,比如相册功能,通常用户上传相片后我们都会针对该相片再生成一张缩略图,用于其它页面上的列表显示.随便看一下,大部分网站基本都是将原图等比缩放来生成缩略图.但完美主义者会发 ...

  7. CSDN博文中完美地去掉图片水印、调整图片位置和大小

    写在这里的初衷,一是备忘,二是希望得到高人指点,三是希望能遇到志同道合的朋友. 写博客的时候,大多数人会有这种感觉:图片上传会有水印,位置默认靠左,有时候嫌直接上传比较大,不太美观,特此查找了解决办法 ...

  8. php给图片加图片水印,php给图片添加文字或图片水印实现代码

    原标题:php给图片添加文字或图片水印实现代码 一.文字水印 文字水印就是在图片上加上文字,主要使用gd库的imagefttext方法,并且需要字体文件.效果图如下: $dst_path = 'dst ...

  9. SpringBoot 集成 thumbnailator (图片缩放,区域裁剪,水印,旋转,保持比例)保姆级教程(含代码)

    Thumbnailator 是 Google 开源的图片处理库,支持:图片缩放,区域裁剪,水印,旋转,保持比例.详细介绍可以百度或官网,话不多说,直接上代码,具体要结合自己的业务需要进行使用(有些复杂 ...

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

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

最新文章

  1. linux tomcat 进程杀掉_Linux-(一)常用命令总结
  2. 机器学习的数学基础 - 期望,方差与协方差
  3. 算法学习之路|住房空置率
  4. 简自动类型提升,精度损失类型强制转换,常用转义字符,简单帮你回顾Java基本数据类型整形浮点型字符型布尔型Boolean及其运算规则
  5. Spring使用注解@Transactional事物手动回滚
  6. hacktoberfest_我刚刚得到了免费的Hacktoberfest衬衫。 这是获取您的商品的快速方法。
  7. 解决/usr/bin/ld: cannot find -lxxx
  8. 【干货】深度学习中的线性代数---简明教程
  9. python自学笔记_Python 自学笔记
  10. 勒索过苹果的黑客REvil又来了?这次是7000万美元赎金!
  11. python难学吗-python语言好学吗
  12. PS4蓝牙手柄分析之1
  13. Redis 分布式并发防止脏读
  14. Excel编程 VBA环境搭建(一)
  15. 2019南京大学计算机考研录取名单,2019南京大学计算机考研录取名单啥时出来
  16. POJ 2509 Peter's smokes
  17. c++生成DLL文件(visual studio 2019)面向小白萌新
  18. 如何计算字符串的字节长度
  19. 用Windows live writer在blogbus写博客
  20. 用HTML写一个仿写新浪微博简单的导航

热门文章

  1. C++程序中如何执行cmd命令
  2. idea中使用git创建分支与标签
  3. ARCGIS中某字段递增赋值,如1,2,3,4,
  4. Unity 屏幕特效 之 简单地调整颜色的 色散效果 的实现
  5. 从零开始Tableau | 11.表计算-计算依据
  6. for循环打印等腰三角形
  7. vue:实现前端生成并下载二维码(使用qrcodejs2插件)
  8. 在线教育大数据营销平台实战(搭建篇)
  9. 【服务器】Linux一键安装web环境全攻略(阿里云服务器)(Centos )
  10. 初学者都能看懂的MYSQL索引基础