首页 > 语言 > PHP > 正文

PHP中多张图片合成一张图片例子

2024-09-04 11:44:36
字体:
来源:转载
供稿:网友

今天分享一段PHP中多张图片合成一张图片的代码实现,我们可以在图片合成,水印,九宫格等需求下使用到类似这样的图片合成效果,下面一起来看看例子吧.

例子代码如下:

  1. $imgs = array(); 
  2. $imgs[0] = '1.jpg'
  3. $imgs[1] = '2.jpg'
  4. $imgs[2] = '3.jpg'
  5. $imgs[3] = '4.jpg'
  6. $target = 'emp.jpg';//背景图片 
  7. $target_img = Imagecreatefromjpeg($target); 
  8. $sourcearray(); 
  9. foreach ($imgs as $k=>$v){ 
  10.     $source[$k]['source'] = Imagecreatefromjpeg($v); 
  11.     $source[$k]['size'] = getimagesize($v); 
  12. //imagecopy ($target_img,$source[0]['source'],2,2,0,0,$source[0]['size'][0],$source[0]['size'][1]); 
  13. //imagecopy ($target_img,$source[1]['source'],250,2,0,0,$source[1]['size'][0],$source[1]['size'][1]); 
  14. $num1=0; 
  15. $num=3; //控制列数,一行几列,0为1以此类推。 
  16. $tmp=2; 
  17. $tmpy=2; //图片之间的间距 
  18. for ($i=0; $i<4; $i++){  
  19.     imagecopy($target_img,$source[$i]['source'],$tmp,$tmpy,0,0,$source[$i]['size'][0],$source[$i]['size'][1]); 
  20.     $tmp = $tmp+$source[$i]['size'][0]; 
  21.     $tmp = $tmp+5; //开源软件:Vevb.com 
  22.     if($i==$num){ 
  23.         $tmpy = $tmpy+$source[$i]['size'][1]; 
  24.         $tmpy = $tmpy+5; 
  25.         $tmp=2; 
  26.         $num=$num+3; 
  27.     } 
  28. Imagejpeg($target_img,'pin.jpg'); 
  29. ?> 
  30. <img src="pin.jpg">

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表