Черепица изображений с помощью PHP GD - PullRequest
0 голосов
/ 11 января 2012

Я пытаюсь выложить несколько изображений, т.е. поместить одно прямо под другое.Все они имеют одинаковую ширину (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.

Спасибо.

1 Ответ

0 голосов
/ 11 января 2012

Хорошо, очевидно, проблема заключалась в том, что на странице, которая должна была быть отображена, был HTML, который оказывается невозможным в сочетании с изображением GD.

Так что я выбрал другой подход.Я сохранил изображение в виде файла, например:

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

и установил его в качестве фона в CSS.И теперь это работает!

...