先看最终结果
image.png
图中 背景上添加两张图片 以及一行文字
php代码
/**
* 将图1和图2画在背景图bgimg上
*/
$bgimg = "bgimg.jpg";
$bg_info = getimagesize($bgimg);
//获取图片的后缀
$bg_type = image_type_to_extension($bg_info[2], false);
//拼接图片资源句柄函数
$func = 'imagecreatefrom' . $bg_type;
//创建图片资源句柄
$bg_image = $func($bgimg);
//图1处理
$tu1 = "tu1.jpg";
$tu1_info = getimagesize($tu1);
$tu1_type = image_type_to_extension($tu1_info[2], false);
//创建图片资源句柄
$tu1_func = 'imagecreatefrom' . $tu1_type;
$tu1_image = $tu1_func($tu1);
//合并背景图+图1
imagecopy($bg_image, $tu1_image, 200, 50, 0, 0, 301, 299); //图1 200距左边距 50距顶边距 301 299图1大小 背景图 0 0
//图2处理 二维码
$tu2 = "tu2.jpg";
$tu2_mark = getimagesize($tu2);
$tu2_type = image_type_to_extension($tu2_mark[2], false);
//创建图片资源句柄
$tu2_func = 'imagecreatefrom' . $tu2_type;
$tu2_image = $tu2_func($tu2);
//合并背景图+二维码
imagecopy($bg_image, $tu2_image, 583, 1193, 0, 0, 258, 261);
//文字
$font = "msyh.ttc"; //字体文件
$content = ['你好', '小码农'];
$font_lposition = [180, 180]; //距左边距
$font_tposition = [993, 1051]; //距上边距
if (count($content) > 0) {
for ($i = 0; $i < count($content); $i++) {
imagettftext($bg_image, 25, 0, $font_lposition[$i], $font_tposition[$i], 0, $font, $content[$i]);
}
}
//图片输出函数拼接
$outFunc = 'image' . $bg_type;
//保存图片
$img_name = "new.jpg";
$outFunc($bg_image, $img_name);
//销毁内存
imagedestroy($bg_image);
imagedestroy($tu1_image);
imagedestroy($tu2_image);
注:
添加字体的时候要先下载字体文件 放在指定目录才可以添加文章
网友评论