PHP实现图片合成新图片

//案例一:将活动背景图片和动态二维码图片合成一张图片

//图片一$path_1= 'https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png';//图片二$path_2= 'http://tb1.bdstatic.com/tb/static-client/img/webpage/wap_code.png';//创建图片对象

//imagecreatefrompng($filename)--由文件或 URL 创建一个新图象$image_1= imagecreatefrompng($path_1);$image_2= imagecreatefrompng($path_2);//合成图片

//imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )---拷贝并合并图像的一部分

//将 src_im 图像中坐标从 src_x,src_y 开始,宽度为 src_w,高度为 src_h 的一部分拷贝到 dst_im 图像中坐标为 dst_x 和 dst_y 的位置上。两图像将根据 pct 来决定合并程度,其值范围从 0 到 100。当 pct = 0 时,实际上什么也没做,当为 100 时对于调色板图像本函数和 imagecopy() 完全一样,它对真彩色图像实现了 alpha 透明。imagecopymerge($image_1,$image_2, 0, 0, 0, 0, imagesx($image_2), imagesy($image_2), 100);// 输出合成图片

//imagepng($image[,$filename]) — 以 PNG 格式将图像输出到浏览器或文件$merge= 'merge.png';var_dump(imagepng($image_3,'./merge.png'));//案例二:将活动背景图片设置透明,然后和动态二维码图片合成一张图片

// 图片一 $path_1= 'https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png';// 图片二$path_2= 'http://tb1.bdstatic.com/tb/static-client/img/webpage/wap_code.png';//创建图片对象$image_1= imagecreatefrompng($path_1);$image_2= imagecreatefrompng($path_2);//创建真彩画布

//imagecreatetruecolor(int $width, int $height)--新建一个真彩色图像$image_3= imageCreatetruecolor(imagesx($image_1),imagesy($image_1));//为真彩画布创建白色背景

//imagecolorallocate(resource $image, int $red, int $green, int $blue)$color= imagecolorallocate($image_3, 255, 255, 255);//imagefill(resource $image ,int $x ,int $y ,int $color)

//在 image 图像的坐标 x,y(图像左上角为 0, 0)处用 color 颜色执行区域填充(即与 x, y 点颜色相同且相邻的点都会被填充)imagefill($image_3, 0, 0,$color);//设置透明

//imagecolortransparent(resource $image [,int $color])

//将image图像中的透明色设定为 colorimageColorTransparent($image_3,$color);//复制图片一到真彩画布中(重新取样-获取透明图片)

//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:源图象的高度imagecopyresampled($image_3,$image_1, 0, 0, 0, 0, imagesx($image_1), imagesy($image_1), imagesx($image_1), imagesy($image_1));//与图片二合成

//imagecopymerge ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h , int $pct )---拷贝并合并图像的一部分

// //将 src_im 图像中坐标从 src_x,src_y 开始,宽度为 src_w,高度为 src_h 的一部分拷贝到 dst_im 图像中坐标为 dst_x 和 dst_y 的位置上。两图像将根据 pct 来决定合并程度,其值范围从 0 到 100。当 pct = 0 时,实际上什么也没做,当为 100 时对于调色板图像本函数和 imagecopy() 完全一样,它对真彩色图像实现了 alpha 透明。imagecopymerge($image_3,$image_2, 0, 0, 0, 0, imagesx($image_2), imagesy($image_2), 100);  // 输出合成图片var_dump(imagepng($image_3,'./merge1.png'));

你可能感兴趣的:(PHP实现图片合成新图片)