将动态创建的多个jpeg输出到网页中

时间:2015-04-13 07:26:17

标签: php loops header jpeg gd

所以我有这个代码可以创建一个jpeg矩形。

<?php
// Create a 200 x 200 image
$canvas = imagecreatetruecolor(1000, 500);

// Allocate colors
//$pink = imagecolorallocate($canvas, 255, 105, 180);
$white = imagecolorallocate($canvas, 255, 255, 255);
//$green = imagecolorallocate($canvas, 132, 135, 28);

// Draw three rectangles each with its own color
//imagerectangle($canvas, 50, 50, 150, 150, $pink);
//imagerectangle($canvas, 100, 120, 75, 160, $green);
imagerectangle($canvas, 0, 0, 120, 100, $white);

// Output and free from memory
header('Content-Type: image/jpeg');

imagejpeg($canvas);
imagedestroy($canvas);
?>

有什么办法,我可以在循环中运行它来获取多个矩形输出到网页。

请注意:我不希望同一画布中有多个矩形。我想要一个带有矩形的画布。下一个画布中有另一个矩形,等等。我尝试在循环中运行它,但它似乎不起作用

1 个答案:

答案 0 :(得分:1)

不,你不能完全用PHP做这件事。您只能输出单个图像,并明确声明“我不想在同一个画布中使用多个矩形”。

您需要在HTML中创建多个引用,可能会传递PHP在创建图像时使用的参数:

<img src="/path/to/php?width=100&height=200">
<img src="/path/to/php?width=200&height=100">
<img src="/path/to/php?width=500&height=500">
...

在PHP中(这只是一个例子; 验证所有参数! ):

$canvas = imagecreatetruecolor($_GET['width'], $_GET['height']);
...