GD 透明图片上色 加文字 拼接图片

透明图片上色


        $$source_image = 'xxxx.jpg';
        //1.创建图片
        $target_image = imagecreatetruecolor("水印宽度", "水印高度");
        //2.上色
        $color=imagecolorallocate($target_image,229,231,230);
        //3.设置透明
        imagecolortransparent($target_image,$color);
        //4.填充
        imagefill($target_image,0,0,$color);
        //创建一个彩色的底图
        imagecopyresampled($target_image, $source_image, 0, 0, 0, 0, "水印宽度", "水印高度", "原图宽度", "原图高度");

合并图像

imagecopymerge() 函数用于拷贝并合并图像的一部分。

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 时,实际上什么也没做,反之完全合并。
当为 pct = 100 时对于调色板图像本函数和 imagecopy() 完全一样,参考阅读:

imagecopy():拷贝图像或图像的一部分。

该函数的一个典型应用就是将图像打上水印标识:

<?
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);
?>

posted @ 2022-07-27 12:13  Bashuslovakia  阅读(80)  评论(0编辑  收藏  举报