Sto provando a generare un'immagine completamente casuale di una determinata dimensione.Come generare un'immagine completamente casuale?
Ecco quello che ho finora:
<?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);
?>
Il problema è che dopo 4 righe smette di essere casuale e si riempie di un colore solido come questo
Usa 'imagesetpixel()' invece del rettangolo pieno. molto meno overhead per impostare un singolo pixel rispetto a un rettangolo 1x1. –
@MarcB Grazie per il suggerimento, ha reso più veloce, ma soffre ancora dello stesso problema – Gricey
4x64 = 256, che è il limite per un'immagine a 8 bit (dato che non stai usando imagecreateTRUECOLOR()) è tutto ciò che puoi avere. –