Re: PHP GD - Create a "flag"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 2010-05-09 at 14:21 +0200, Giorgio wrote:

> Thankyou Ashley,
> 
> as I only need 5 colors for each image, my idea was to create a single pixel
> image for each color and save it on the hd (so that i don't have to create
> it every time).
> 
> I've finally used this code:
> 
> imagecopymerge($base, $img1, 0, 0, 1, 1, 100, 500, 75);
> imagecopymerge($base, $img2, 100, 0, 1, 1, 100, 500, 75);
> imagecopymerge($base, $img3, 200, 0, 1, 1, 100, 500, 75);
> imagecopymerge($base, $img4, 300, 0, 1, 1, 100, 500, 75);
> imagecopymerge($base, $img5, 400, 0, 1, 1, 100, 500, 75);
> 
> ($imgX are 1*1 images. I have a function that checks if they exists)
> 
> You can see the output here: http://aagmns47.facebook.joyent.us/sdna/.
> 
> I think that copying a 1*1 image (and as said i'll cache all 1*1 colors on
> the hd) on a background is less resource-expensive than creating a coloured
> rectangle every time, isn't it?
> 
> Giorgio
> 
> 
> 2010/5/9 Ashley Sheridan <ash@xxxxxxxxxxxxxxxxxxxx>
> 
> >  On Sat, 2010-05-08 at 18:48 +0200, Giorgio wrote:
> >
> > Hi,
> >
> > i've just started using GD libraries. My purpose is to create something like
> > a flag.
> >
> > So that i have a 600*600 px background image, and a 1*1 px image for each
> > colour I need.
> >
> > Ok now let's say i want to colour a third of the background image. I can use
> > this code:
> >
> > imagecopymerge($base, $img1, 0, 0, 0, 0, 200, 600, 85);
> >
> > It will simply make red first 200 px (on x axys) of the bg image. And this
> > work.
> >
> > Now the problem is: how can i add another colour on pixels from 201 (201
> > right? not 200?) to 400?
> >
> > Thankyou
> >
> >
> >
> > Erm, why don't you use something like imagerectangle() ? It's far easier
> > and less resource intensive than having loads of single-pixel images for
> > each colour you want to use.
> >
> >   Thanks,
> > Ash
> > http://www.ashleysheridan.co.uk
> >
> >
> >
> 
> 


Sorry, use imagefilledrectangle() instead of imagerectangle() in the
example I just gave you!

Thanks,
Ash
http://www.ashleysheridan.co.uk



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux