php图片添加文字水印 以及图片合成加水印图片

字号+ 作者:alpha 来源:www.seoalphas.com 2017-09-10 16:53 浏览次数(1791)

通过PHP合成图片,给图片加水印等功能都可以使用此方法来完成

$bigImgPath = 'backgroud.png';
    $img = imagecreatefromstring(file_get_contents($bigImgPath));
 
    $font = 'msyhl.ttc';//字体
    $black = imagecolorallocate($img, 0, 0, 0);//字体颜色 RGB
 
    $fontSize = 20;   //字体大小
    $circleSize = 60; //旋转角度
    $left = 50;      //左边距
    $top = 150;       //顶边距
 
    imagefttext($img, $fontSize, $circleSize, $left, $top, $black, $font, 'Rhythmk| 坤');
 
    list($bgWidth, $bgHight, $bgType) = getimagesize($bigImgPath);
    switch ($bgType) {
        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:
            break;
    }
    imagedestroy($img);


效果:

    

2、图片合成


$bigImgPath = 'backgroud.png';
$qCodePath = 'qcode.png';
 
$bigImg = imagecreatefromstring(file_get_contents($bigImgPath));
$qCodeImg = imagecreatefromstring(file_get_contents($qCodePath));
 
list($qCodeWidth, $qCodeHight, $qCodeType) = getimagesize($qCodePath);
// imagecopymerge使用注解
imagecopymerge($bigImg, $qCodeImg, 200, 300, 0, 0, $qCodeWidth, $qCodeHight, 100);
 
list($bigWidth, $bigHight, $bigType) = getimagesize($bigImgPath);
 
 
switch ($bigType) {
    case 1: //gif
        header('Content-Type:image/gif');
        imagegif($bigImg);
        break;
    case 2: //jpg
        header('Content-Type:image/jpg');
        imagejpeg($bigImg);
        break;
    case 3: //jpg
        header('Content-Type:image/png');
        imagepng($bigImg);
        break;
    default:
        # code...
        break;
}
 
imagedestroy($bigImg);
imagedestroy($qcodeImg);

函数注解:

imagecopymerge()

imagecopymerge() 函数用于拷贝并合并图像的一部分,成功返回 TRUE ,否则返回 FALSE 。

语法:

bool imagecopymerge( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y, int src_w, int src_h, int pct )

参数说明:

dst_im 目标图像
src_im 被拷贝的源图像
dst_x 目标图像开始 x 坐标
dst_y 目标图像开始 y 坐标,x,y同为 0 则从左上角开始
src_x 拷贝图像开始 x 坐标
src_y 拷贝图像开始 y 坐标,x,y同为 0 则从左上角开始拷贝
src_w (从 src_x 开始)拷贝的宽度
src_h (从 src_y 开始)拷贝的高度
pct 图像合并程度,取值 0-100 ,当 pct=0 时,实际上什么也没做,反之完全合并。

 

 效果图:

 

一只站在树上的鸟儿,从来不会害怕树枝会断裂,因为它相信的不是树枝,而是它自己的翅膀。与其每天担心未来,不如努力做好现在。


标签
PHP图片水印

本站部分技术文章为参考网上实用内容发布,目的是记录踩坑经验,若未备注来源而侵犯了您原创文章权益,请联系博主删除;对文章有不同看法的朋友欢迎在评论区留言互动

相关文章
  •  微信Token验证代码的实现

    微信Token验证代码的实现

    浏览次数:1177

  • 关于微信分享到朋友圈或好友无法显示设置的标题及缩略图问题记录

    关于微信分享到朋友圈或好友无法显示设置的标题及缩略图问题记录

    浏览次数:664

  • 如何限制必须使用微信打开网页

    如何限制必须使用微信打开网页

    浏览次数:563

  • PHP缓存微信公众号access_token的两种方法

    PHP缓存微信公众号access_token的两种方法

    浏览次数:548

  • 微信获取用户列表接口开发教程

    微信获取用户列表接口开发教程

    浏览次数:353

  • 新增临时素材

    新增临时素材

    浏览次数:327

  • 微信公众平台-发送被动响应消息

    微信公众平台-发送被动响应消息

    浏览次数:247

网友点评
功能开发中......其实是博主懒了而已......
0.578125s