s***@noos.fr
2007-02-04 21:32:59 UTC
Je galères depuis déjà au moins 2 semaines sur le problème suivant:
Ce code a pour but, dés que j'aurais résolu mon problème, de générer
des images coté serveur avec un fond en dégradé radial. Mais pour
l'instant, pour simplifier, il s'agit de faire 20 lignes de 20 carrée
de 10 Px par 10 , en alternant à chaque fois, carrée bleu, carrée
blanc, carrée bleu...
La condition if de la boucle for de la classe ligneCarree, indique
que si la couleur RVB vaut 0,255,255 alors la remplacer par la couleur
255,255,255, en alternant $rouge=0 et $rouge =255
Mais voila cela se passe bien jusqu'a la 13 ème ligne au 255 ème
carrée !!!!??? La couleur passe alors, au bleu, définitivement.
Mais alors de quoi s'agit il ?...si quelqu'un a une idée ?..
Je n'ai pourtant pas demandé de compté le nombre de carrée :?
<?php
header("Content-type: image/jpeg");
class fond
{
var $noir;
var $im;
function fond($img)
{
$this->im = $img;
$this->noir=imageColorAllocate($this->im,0,0,0);
imagefill($this->im,10,10,$this->noir);
}
}
class ligneCarree
{
var $x2;
var $couleur;
var $im;
function ligneCarree($img,$X,$x1,$y1,$y2,$rouge)
{
$this->im = $img;
for($this->x2=10; $this->x2 < $X+1 ;$this->x2+=10)
{
$this->couleur=imageColorAllocate($this->im,$rouge,255,255);
imagefilledrectangle($this->im,$x1,$y1,$this->x2,$y2,$this-
$rouge+=255;
if ($rouge > 255)
{
$rouge=0;
}
}
}
}
$X=205;
$Y=205;
$x1=0;
$y1=0;
$rouge=0;
$image=imagecreate($X,$Y);
$tableau = new fond($image);
for($y2=10; $y2<131 ;$y2+=10) // REMPLACER 131 par $Y+1
{
$ligne2 = new ligneCarree($image,$X,$x1,$y1,$y2,$rouge);
$y1+=10;
}
imageJPEG($image);
imagedestroy($image);
?>
Ce code a pour but, dés que j'aurais résolu mon problème, de générer
des images coté serveur avec un fond en dégradé radial. Mais pour
l'instant, pour simplifier, il s'agit de faire 20 lignes de 20 carrée
de 10 Px par 10 , en alternant à chaque fois, carrée bleu, carrée
blanc, carrée bleu...
La condition if de la boucle for de la classe ligneCarree, indique
que si la couleur RVB vaut 0,255,255 alors la remplacer par la couleur
255,255,255, en alternant $rouge=0 et $rouge =255
Mais voila cela se passe bien jusqu'a la 13 ème ligne au 255 ème
carrée !!!!??? La couleur passe alors, au bleu, définitivement.
Mais alors de quoi s'agit il ?...si quelqu'un a une idée ?..
Je n'ai pourtant pas demandé de compté le nombre de carrée :?
<?php
header("Content-type: image/jpeg");
class fond
{
var $noir;
var $im;
function fond($img)
{
$this->im = $img;
$this->noir=imageColorAllocate($this->im,0,0,0);
imagefill($this->im,10,10,$this->noir);
}
}
class ligneCarree
{
var $x2;
var $couleur;
var $im;
function ligneCarree($img,$X,$x1,$y1,$y2,$rouge)
{
$this->im = $img;
for($this->x2=10; $this->x2 < $X+1 ;$this->x2+=10)
{
$this->couleur=imageColorAllocate($this->im,$rouge,255,255);
imagefilledrectangle($this->im,$x1,$y1,$this->x2,$y2,$this-
couleur);
$x1+=10;$rouge+=255;
if ($rouge > 255)
{
$rouge=0;
}
}
}
}
$X=205;
$Y=205;
$x1=0;
$y1=0;
$rouge=0;
$image=imagecreate($X,$Y);
$tableau = new fond($image);
for($y2=10; $y2<131 ;$y2+=10) // REMPLACER 131 par $Y+1
{
$ligne2 = new ligneCarree($image,$X,$x1,$y1,$y2,$rouge);
$y1+=10;
}
imageJPEG($image);
imagedestroy($image);
?>