2012-01-11 25 views
0

私は複数の画像を並べ替える、つまり別の画像の下に直接置くことを試みています。それらはすべて同じ幅(120ピクセル)と異なる高さを持ちます。PHP GDで画像をタイリング

これは私が持っているものです。

$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にしようと、私は考え、なぜ:(同じものを持っていないイメージを伝える続けます。

感謝。

+0

$ url [$ drawn]は正しいですか?または$ url [$ i]のようなものが必要ですか? – djot

+0

実際のエラーを表示するには、[ファイル]> [ページの保存]の順に移動し、メモ帳に「画像」を開きます。エラーを読んで、ここに投稿してください。 – Different55

+0

yup、$ url [$ drawn]は正しいです:) ランダムな文字の読み込みがありますが、エラーメッセージは表示されません。 – bur

答えて

0

さて、どうやら問題は、GDイメージとの組み合わせで可能ではないことが判明した、HTMLをレンダリングすることになっていたページがあったということでした。

私は別のアプローチをとった。レンダリングされた画像をファイルとして保存しました。

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

これをCSSの背景として設定しました。そして今、それは動作します!

関連する問題