问题描述
- 请教关于php图片处理的问题
-
把用户上传的jpg文件保存到服务器上的一个文件夹中,在把该文件夹里的jpg纵向拼合成一张长图并把长图保存为png给用户反回,
现在图片的拼合不会,求一个例子
解决方案
<?php
$imgs = array();
$imgs[0] = 'imgs/1.jpg';
$imgs[1] = 'imgs/2.jpg';
$imgs[2] = 'imgs/3.jpg';
$imgs[3] = 'imgs/4.jpg';
$target = 'emp.jpg'; //背景图片
$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]);
$num1 = 0;
$num = 1;
$tmp = 2;
$tmpy = 2; //图片之间的间距
for ($i = 0; $i < 4; $i++) {
imagecopy($target_img, $source[$i]['source'], $tmp, $tmpy, 0, 0, $source[$i]['size'][0], $source[$i]['size'][1]);
$tmp = $tmp + $source[$i]['size'][0];
$tmp = $tmp + 5;
if ($i == $num) {
$tmpy = $tmpy + $source[$i]['size'][1];
$tmpy = $tmpy + 5;
$tmp = 2;
$num = $num + 3;
}
}
Imagejpeg($target_img, 'pin.jpg');
?>
<img src="pin.jpg">
时间: 2024-10-27 16:05:23