PHP 图片上放多张图可指定位置

PHP 图片上放多张图可指定位置

<?php
$imgs = array();
$url = 'http://e.hiphotos.baidu.com/image/h%3D200/sign=a0901680a3c27d1eba263cc42bd4adaf/b21bb051f819861842d54ba04ded2e738bd4e600.jpg';
$url2 = 'http://img5.duitang.com/uploads/item/201502/13/20150213125742_xyeBc.jpeg';

//指定原图生成大小
$imgs[0] = create_width_height($url,100,100);
$imgs[1] = create_width_height($url2,100,100);

//背景图片
$target = 'http://pic29.nipic.com/20130507/12198576_205126144167_2.jpg';

/*根据图片的 格式 选择对应的 函数   例子用的 png */
//$target_img   = imagecreatefrompng($target);
$target_img = imagecreatefromjpeg($target);

$source= array();
foreach ($imgs as $k=>$v){
    $source[$k]['source'] = imagecreatefromjpeg($v);
    $source[$k]['size']   = getimagesize($v);
}

/*指定 两张图的 坐标点*/
imagecopy($target_img,$source[0]['source'],2,2,0,0,$source[0]['size'][0],$source[0]['size'][1]);

imagecopy($target_img,$source[1]['source'],250,2,0,0,$source[1]['size'][0],$source[1]['size'][1]);

//生成的合并后的图片
Imagejpeg($target_img,'pin.jpg');

//删除生成的小图
unlink($imgs[0]);
unlink($imgs[1]);

//改变原图大小
function create_width_height($img,$width,$height){
    //获取图片图片大小
    $img_mime = getimagesize($img);

    if($img_mime['mime'] == 'image/jpeg'){
        $imgsrc = imagecreatefromjpeg($img);
    }

    if($img_mime['mime'] == 'image/png'){
        $imgsrc = imagecreatefrompng($img);
    }

    $image = imagecreatetruecolor($width, $height); //创建一个彩色的底图

    imagecopyresampled($image, $imgsrc, 0, 0, 0, 0,$width,$height,$img_mime[0], $img_mime[1]);

    $file_name = time().mt_rand(1,99).'.jpg';
    imagejpeg($image,$file_name);

    return $file_name;
}

?>
<img src="pin.jpg">