一、文字水印

文字水印就是在图片上加上文字,主要使用gd库的imagefttext方法,并且需要字体文件。

代码如下:

$dst_path = 'dst.jpg';

//创建图片的实例
$dst = imagecreatefromstring(file_get_contents($dst_path));

//打上文字
$font = './simsun.ttc';//字体
$black = imagecolorallocate($dst, 0x00, 0x00, 0x00);//字体颜色
imagefttext($dst, 13, 0, 20, 20, $black, $font, '快乐编程');

//输出图片
list($dst_w, $dst_h, $dst_type) = getimagesize($dst_path);
switch ($dst_type) {
    case 1://GIF
        header('Content-Type: image/gif');
        imagegif($dst);
        break;
    case 2://JPG
        header('Content-Type: image/jpeg');
        imagejpeg($dst);
        break;
    case 3://PNG
        header('Content-Type: image/png');
        imagepng($dst);
        break;
    default:
        break;
}

imagedestroy($dst);

二、图片水印

图片水印就是将一张图片加在另外一张图片上,主要使用gd库的imagecopy和imagecopymerge。

代码如下:

$dst_path = 'dst.jpg';
$src_path = 'src.jpg';

//创建图片的实例
$dst = imagecreatefromstring(file_get_contents($dst_path));
$src = imagecreatefromstring(file_get_contents($src_path));

//获取水印图片的宽高
list($src_w, $src_h) = getimagesize($src_path);

//将水印图片复制到目标图片上,最后个参数50是设置透明度,这里实现半透明效果
imagecopymerge($dst, $src, 10, 10, 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://GIF
        header('Content-Type: image/gif');
        imagegif($dst);
        break;
    case 2://JPG
        header('Content-Type: image/jpeg');
        imagejpeg($dst);
        break;
    case 3://PNG
        header('Content-Type: image/png');
        imagepng($dst);
        break;
    default:
        break;
}

imagedestroy($dst);
imagedestroy($src);

使用GD库为图片打水印相关推荐

  1. PHP用gd库给图片添加水印,php用GD库给图片添加水印

    php用GD库给图片添加文字水印,整个代码比较简单,DEMO如下: /*打开图片*/ //1.配置图片路径 $src = "aeroplane.jpg"; //2.获取图片信息 $ ...

  2. php 图片上加文字,php使用GD库实现图片上添加文字的方法(代码)

    本篇文章给大家带来的内容是关于php使用GD库实现图片上添加文字的方法(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 我们可以利用php的gd库扩展来对我们的图片进行处理,例 ...

  3. php颜色底色,PHP GD 库自定义图片背景颜色

    缘起 开发"微信推广海报"的时, 背景图片未覆盖的地方默认会被黑色填充. 而我希望改成白色背景, 以对用户更友好一些. 但是无论设置成什么颜色, 图片的背景颜色一直都是黑色, 无法 ...

  4. PHP面向对象——GD库实现图片水印和缩略图

    今天的实现目标就是使用GD库完成对图片加水印和图 片缩略图两个功能 动身前逻辑准备 属性:路径功能:构造方法生成水印的方法获取图片信息获取位置信息(123 456 789)创建图片资源合并图片资源重新 ...

  5. 使用php的GD库拼接图片

    本来是想用ImageMagick来实现这个功能,但是ImageMagick 的环境搭建了半天没搞定,就换成了GD库.等有时间再去研究ImageMagick吧. 为了简化业务人员的工作流程,需要在系统上 ...

  6. php 用gd库在图片上写文字,并处理文字糊模问题

    今天有个需求,用php在一张图片上写文字. 这个不是挺简单的嘛?我在一个test.php文件上,敲出6行代码,搞定 img=imagecreatefrompng("C:\Users\Admi ...

  7. php获取微信素材图片乱码,如何解决在php用gd库输出图片到微信浏览器出现乱码...

    如何解决在php用gd输出图片到微信浏览器出现乱码? 程序如下:<?php $im = imagecreate(200, 300); $white = imagecolorallocate($i ...

  8. php GD库实现图片合并、文本居中 案例:生成分享海报

    因有需求要做到用php服务端去生成分享海报,并要求把头像.文字.以及二维码跟海报背景图合并,所以研究了一下php的GD库来实现该需求 本次用到的函数介绍 getimagesize 获取图片的宽高 im ...

  9. mysql 追加水印_php 使用GD库为页面增加水印示例代码

    header ("Content-type: image/png"); $conn = MYSQL_connect("localhost", "roo ...

最新文章

  1. linux mysql统计次数_MySQL统计函数记录
  2. [scala-spark]5. 伴生类和伴生对象
  3. 使用tracert命令查看某一个网站的ip地址
  4. java中的%%%_JSP页面中%!%与%%与%=%
  5. SSH整合中,使用父action重构子类action类.(在父类中获取子类中的泛型对象)
  6. [20161128]关于Little Enddian.txt
  7. 【零基础学Java】—自定义异常(四十八)
  8. 微信小程序云开发教程-微信小程序的JS基础-js文件基本结构与生命周期
  9. 谷歌浏览器插件安装 音量提升插件Volume Control
  10. c#量化交易_全市场股票量化交易
  11. 通信线路工程验收规范_老杨一建通信学堂通信线路工程施工技术
  12. 游戏邦社交游戏-手机游戏行业分析报告(2010年版)
  13. Task5 | 结构方程 | “老年病”与身份的关系
  14. 看门狗的喂法(独立看门狗和窗口看门狗的区别)!
  15. 微信营销辅助工具能够帮助我们解锁哪些新功能?
  16. https://api.douban.com 不在以下 request 合法域名列表中,请参考文档:https://mp.weixin.qq.com/debug/wxadoc/dev/api/net
  17. 20几岁,不要急着长大
  18. 在pycharm中如何使用新的库文件覆盖旧的cv2安装失败的问题
  19. 订单可视化2实战-合同评审
  20. 图数据库――大数据时代的高铁

热门文章

  1. mongodb 面试题
  2. Configuration Wizard 启动失败
  3. java铃声_java多线程抓取铃声多多官网的铃声数据
  4. python月亮_如何用python代码画一个月亮
  5. from __future__ import
  6. Unity3d--Priests and Devils游戏
  7. 解释MySQL外连接、内连接与自连接的区别
  8. linux上验证cudnn是否安装成功_Linux下CUDA+CUDNN+TensorFlow安装笔记
  9. 广西男子酒驾冲撞宵夜摊多人受伤 民众自发抬车救人
  10. selenium驱动Firefox模拟浏览器操作