Próbuję wygenerować całkowicie losowy obraz o danym rozmiarze.Jak wygenerować całkowicie losowy obraz?
Oto co mam do tej pory:
<?php
$Width = 64;
$Height = 32;
$Image = imagecreate($Width, $Height);
for($Row = 1; $Row <= $Height; $Row++) {
for($Column = 1; $Column <= $Width; $Column++) {
$Red = mt_rand(0,255);
$Green = mt_rand(0,255);
$Blue = mt_rand(0,255);
$Colour = imagecolorallocate ($Image, $Red , $Green, $Blue);
imagesetpixel($Image,$Column - 1 , $Row - 1, $Colour);
}
}
header('Content-type: image/png');
imagepng($Image);
?>
Problem polega na tym, że po 4 rzędy przestaje być przypadkowe i wypełnia się kolorem jak ten
Użyj 'imagesetpixel()' zamiast wypełnionego prostokąta. znacznie mniejszy narzut, aby ustawić pojedynczy piksel niż prostokąta 1x1. –
@MarcB Dzięki za tę wskazówkę, zrobiłeś to szybciej, ale nadal cierpi z powodu tego samego problemu – Gricey
4x64 = 256, co jest granicą dla obrazu 8-bitowego (ponieważ nie używasz imagecreateTRUECOLOR()) to wszystko, co możesz mieć. –