要对一张模版图片进行处理,替换其中的部分,包括文字和图片。
1、主要使用
imagecreatefromjpeg 从JPG文件创建图像对象、
imagecreatefrompng从PNG文件创建图像对象、
getimagesize获取图像对象的尺寸、
imagecopymerge合并两个图像对象、
imagecolorallocate设置图像对象的背景和前景颜色、
imagefttext从字体文件创建图像对象、
imagejpeg输出或者保存图像对象、
imagedestroy销毁图像对象
等方法
2、上代码,自行领悟
//得到原始图片信息
$dst = "p201601.jpg";
$dst_im = imagecreatefromjpeg($dst);
$dst_info = getimagesize($dst);
//替换图像
$src = "qrcode_new.png";
$src_im = imagecreatefrompng($src);
$src_info = getimagesize($src);
//替换图像透明度
$alpha = 100;
//合并水印图片
imagecopymerge($dst_im,$src_im,404,630,0,0,$src_info[0],$src_info[1],$alpha);
//去掉原有文字
$blank_file = "blank.jpg";
$blank_im = imagecreatefromjpeg($blank_file);
$blank_info = getimagesize($blank_file);
imagecopymerge($dst_im,$blank_im,420,440,0,0,$blank_info[0],$blank_info[1],$alpha);
//准备处理文字
$font = "font/HYQiHei-80W.otf";//字体
$black = imagecolorallocate($dst_im, 0, 191, 0);//字体颜色 RGB
$fontSize = 52; //字体大小
$circleSize = 0; //旋转角度
$left = 450; //左边距
$top = 506; //顶边距
imagefttext($dst_im, $fontSize, $circleSize, $left, $top, $black, $font, '大闹天宫');
//输出合并后水印图片
imagejpeg($dst_im,"ttt.jpg");
imagedestroy($dst_im);
imagedestroy($src_im);