1

我正在尝试平铺多张图像,即将一张直接放在另一张下面。它们都具有相同的宽度(120 像素)和不同的高度。

这就是我所拥有的:

$finalbg = null;
for($i=0; $i<7; $i++) {
    $addbg = imagecreatefromjpeg('images/left/'.$url[$drawn]);
    $addsize = imagesy($addbg);

    if($finalbg != null) $basesize = imagesy($finalbg); else $basesize = 0;
    $newsize = $addsize+$basesize;

    $newbg = imagecreatetruecolor(120, $newsize);
    if($finalbg != null) imagecopy($newbg, $finalbg, 0, 0, 0, 0, 120, $basesize);
    imagecopy($newbg, $addbg, 0, $basesize, 0, 0, 120, $addsize);
    $finalbg = $newbg;
}

header( "Content-type: image/jpeg" );
imagejpeg($finalbg);

尺寸输出正确,但它一直告诉图像包含错误,我不知道为什么:(如果我尝试输出 addbg 或 newbg 也是一样。

谢谢。

4

1 回答 1

1

好的,显然问题在于页面上有应该呈现的 HTML,事实证明这不可能与 GD 图像结合使用。

所以我采取了不同的方法。我将渲染图像保存为文件,如下所示:

imagejpeg($finalbg, 'images/left/bg.jpg');

并将其设置为 CSS 中的背景。现在它起作用了!

于 2012-01-11T19:30:12.740 回答