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

Outputting multiple jpegs dynamically created, into webpage

所以我有这段代码可以创建一个 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);
?>

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

请注意:我不想在同一个 canvas 中使用多个矩形。我想要一个带有矩形的 canvas。下一个 canvas 里面有另一个矩形,等等。我试过 运行 循环这个,但它似乎不起作用

不,您不能仅使用 PHP 来做到这一点。只能输出单张图片,并且明确声明'I do not want multiple rectangles in the same canvas'.

您需要在 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']);
...