PHP多图合并加水印
来凤姐般的图片·······················哈哈
我就直接放自己的业务代码了,基本复制张贴就可以用了
public function createImg($link,array $data){
//生成二维码
ob_clean();
QRcode::png($link, "../temp/qrcode.jpg", 3, 5, 1);
$qrcode = imagecreatefromstring(file_get_contents("../temp/qrcode.jpg"));
//生成白色背景图
$bc = imagecreatetruecolor(800,1100);
$color = imagecolorallocate($bc,255, 255, 255);
//填充颜色
imagefill($bc, 0, 0, $color);
imagejpeg($bc,"../temp/backgoround.jpg");
$background = imagecreatefromstring(file_get_contents("../temp/backgoround.jpg"));
$main = imagecreatefromstring(file_get_contents($data["good_main_img"]));
//对二维码进行采样
list($qrW, $qrH) = getimagesize("../temp/qrcode.jpg");
//对广告图进行采样
list($mainW, $mainH) = getimagesize($data["good_main_img"]);
//合成图片
imagecopymerge($background, $main, 0, 0, 0, 0, $mainW, $mainH, 100);
imagecopymerge($background, $qrcode, 520, 800, 0, 0, $qrW, $qrH, 100);
//文字
$black = imagecolorallocate($background, 255, 107, 75);//字体颜色
imagefttext($background, 15, 0, 560, 1080, $black, "../temp/zz.ttf", "长按二维码领券购买");
imagefttext($background, 30, 0, 100, 1000, $black, "../temp/zz.ttf", "[券后价]{$data["currte_price"]}元");
imagefttext($background, 30, 0, 200, 850, $black, "../temp/zz.ttf", "原价{$data["good_price"]}元");
imagejpeg($background,"./static/img/temp/good_qrcode.jpg");
}
使用下面的函数 更容易调整合成图片的大小
imagecopyresampled($background,$qrcode,240,300,0,0,190,190,$qrW,$qrH);
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。