不说废话了 直接上代码吧,
在这里插入代码片 $id=$request->get('id');
$data=DB::table('student')->where('id',$id)->first();
$suiji=$this->GetRandStr();
$name=$data->student_name;
$updated_at=$data->updated_at;
$res=$bg_path = public_path().'\bg123.png';
header("content-type:image/png");//发送头信息
$im = imagecreatetruecolor(1024, 598);// 设置画布
$font= realpath('./../public/simHei.ttf'); //字体文件
// 设置背景图片
// $bg = imagecreatefrompng('bg123.png');
$image = 'uploads/'.date('YmdHis').mt_rand(100,999).'.png';//保存图片到uploads/zkz/
// imagecopy($im,$bg,0,0,0,0,1024,598);// 将背景图片拷贝到画布相应位置,后面两个参数为长宽
// imagedestroy($bg);//销毁背景图片
//生成一寸照片
list($width, $height) = getimagesize($res);//原图大小
$newwidth = 1024;
$newheight = 598;
$src_im = imagecreatefrompng($res);// 加载图像
$dst_im = imagecreatetruecolor($newwidth, $newheight);
imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);// 调整大小
imagecopy($im,$dst_im,0,0,0,0,$newwidth,$newheight);//imagecopy (resource $背景 , resource $源图 , 放置位置x,y , 从原图x,y开始复制 , 源图宽,高)
imagedestroy($src_im);//销毁图片
//写入文字
// $srcImgObj = $this->image_create_from_ext($srcImg, $srcImgInfo[2]);
$blacka = imagecolorallocate($im, 15, 23, 25); // 颜色
imagettftext($im, 23, 0, 465, 266, $blacka, $font,$name);//将ttf文字写到图片中
imagettftext($im, 9, 0, 752, 509, $blacka, $font,$updated_at);//将ttf文字写到图片中
imagettftext($im, 12.5, 0, 720, 82, $blacka, $font,$suiji);//将ttf文字写到图片中
imagejpeg($im,$image);// 生成jpeg格式图片1
imagedestroy($im);//销毁图片
$zkz = url($image);//生成的证书图片完整路径