由于我的潜意识最清楚的原因,我正在尝试生成一个雪崩般的画面。
使用 PHP5 和 GD v2.0(或更高版本),我使用以下 php/html:
<?php
$x = $y = 100;
$gd = imagecreatetruecolor($x,$y);
$w = imagecolorallocate($gd, 255, 255, 255);
$b = imagecolorallocate($gd, 0, 0, 0);
for ($r=1; $r <= $y; $r++) {
for ($c=1; $c <= $x; $c++) {
if (rand(0,1) == 0) {
$rand = $w;
}
else {
$rand = $b;
}
imagesetpixel($gd,$r,$c,$rand);
}
}
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="css/stylesheet.css" />
</head>
<body page="snowcrash2">
<?php
echo "<div id=\"snowcrashimg\">";
header('Content-Type: image/png');
imagepng($gd);
echo "</div>";
?>
</body>
</html>
我试图迭代图像的每个“行”的每个“列”,将像素值设置为 1 或 0 以反映黑色或白色。
但是,这会引发(有趣的)错误:“警告:无法修改标头信息 - 标头已由 /var/www/play/snowcrash2.php 中的(输出开始于 /var/www/play/snowcrash2.php:32)发送在第 51 行"
将标头(...)移动到的前几行(试图将标头放在可能及时发送的位置)会导致以下错误(以图像形式):图像“ http:// 127.0.0.1/play/snowcrash2.php “无法显示,因为它包含错误。”
嗯……救命?
出现的唯一另一个主题是这个使用 PHP 和 GD 生成的图像正在被切断,它没有可接受的答案,据我所知,与我遇到的问题无关。