LeRatO
Новичок
??? ImageSetPixel в цикле...
Доброе время суток.
Столкнулась со странной то ли ошибкой, то ли особенностью, то ли со своей глупостью...
Вот элементарный код:
По задумке генерируемая картинка должна состоять из вертикальных линий двух цветов. Но не тут-то было - цвет нормально проставляется всего у полутора строчек имеджа, потом дублируется последний цвет:
Никаких ошибок не выдается, проверено.
Может кто с таким сталкивался и знает, что это такое и как с ним бороться???
-~{}~ 02.05.06 17:54:
Вопрос снят... Читайте доки, и все заработает как хочется ВАМ!
Вот правильный код, если кто сядет мою же лужу:
Хитрость в иеспользовании ImageColorAllocate. 
Доброе время суток.
Столкнулась со странной то ли ошибкой, то ли особенностью, то ли со своей глупостью...
Вот элементарный код:
PHP:
@header("Content-Type: image/png");
// -- создаем картинку
$img=ImageCreate(240,100);
// -- закрашиваем ее
for ($j=0; $j<100; $j++) {
for ($i=0; $i<240; $i++) {
if (floor($i/2)==$i/2)
{$col=ImageColorAllocate($img,0,0,0);} else
{$col=ImageColorAllocate($img,200,200,200);}
ImageSetPixel($img, $i, $j, $col);
}
}
// -- показываем что вышло
ImagePng($img);
ImageDestroy($img);
Никаких ошибок не выдается, проверено.
Может кто с таким сталкивался и знает, что это такое и как с ним бороться???
-~{}~ 02.05.06 17:54:
Вопрос снят... Читайте доки, и все заработает как хочется ВАМ!
Вот правильный код, если кто сядет мою же лужу:
PHP:
@header("Content-Type: image/jpeg");
// выводим результат
// -- создаем картинку
$img=imagecreate(240,100);
$col=array(ImageColorAllocate($img,0,0,0),
ImageColorAllocate($img,200,200,200));
// -- закрашиваем ее
for ($j=0; $j<100; $j++) {
for ($i=0; $i<240; $i++) {
if (floor($i/2)==$i/2)
{$n=0;} else {$n=1;}
ImageSetPixel($img, $i, $j, $col[$n]);
}
}
// -- показываем что вышло
Imagejpeg($img);
ImageDestroy($img);
