PHP 合并图片并在图片上写入文字

// 原始底图
$path_base = "public/template/base.jpg";
// logo图片
$path_logo = "public/template/logo.jpg";
// 载入图像资源

$image_logo = imagecreatefrompng($path_logo);
$image_base = imagecreatefromjpeg($path_base );

$imgWidth = 430;
$imgHeight = 430;
/*bool imagecopyresampled (resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h ,int $src_w , int $src_h  )
$dst_image:新建的图片
$src_image:需要载入的图片
$dst_x:设定需要载入的图片在新图中的x坐标
$dst_y:设定需要载入的图片在新图中的y坐标
$src_x:设定载入图片要载入的区域x坐标
$src_y:设定载入图片要载入的区域y坐标
$dst_w:设定载入的原图的宽度(在此设置缩放)
$dst_h:设定载入的原图的高度(在此设置缩放)
$src_w:原图要载入的宽度
$src_h:原图要载入的高度*/

// 将 logo图片资源载入到原始图片上
imagecopyresampled($image_base, $image_logo, 90, 90, 0, 0,$imgWidth,$imgHeight,imagesx($image_logo), imagesy($image_logo));
$new_path = 'downloa/new.jpg';
// 生成一个合并后的新图
imagejpeg($image_base,"./".$new_path);
// 载入字体 (下载一个字体库文件)
$fontfile = "./public/fonts/black.ttf";
$str = "需要写到图片上的文字";
// 载入新图像资源
$new_pic = imagecreatefromjpeg($new_path);
// 分配颜色和透明度
$color = imagecolorallocatealpha($new_pic,0, 0, 255, 75);
// 将文字写入到新图资源上
imagettftext($new_pic,30,0,1600,480,$color,$fontfile,$str);
// 生成写入文字的的新图
imagejpeg($new_pic,'./'.$new_path);

猜你喜欢

转载自www.cnblogs.com/echo-127/p/9401023.html