Method Image.GIF.render_block()
- Method render_block
render_block(stringobjectimg,objectcolortable,intx,inty,intlocalpalette)
render_block(stringobjectimg,objectcolortable,intx,inty,intlocalpalette,objectalpha)
render_block(stringobjectimg,objectcolortable,intx,inty,intlocalpalette,objectalpha,intr,intg,intb)
render_block(stringobjectimg,objectcolortable,intx,inty,intlocalpalette,intdelay,inttransp_index,intinterlace,intuser_input,intdisposal)
render_block(stringobjectimg,objectcolortable,intx,inty,intlocalpalette,objectalpha,intr,intg,intb,intdelay,intinterlace,intuser_input,intdisposal)- Description
-
This function gives a image block for placement in a GIF file, with or without transparency. The some options actually gives two blocks, the first with graphic control extensions for such things as delay or transparency.
Example:
img1=<ref>Image.Image</ref>([...]); img2=<ref>Image.Image</ref>([...]); [...] // make your very-nice images nct=<ref>Image.Colortable</ref>([...]); // make a nice colortable write(<ref>Image.GIF.header_block</ref>(xsize,ysize,nct)); // write a GIF header write(<ref>Image.GIF.render_block</ref>(img1,nct,0,0,0,10)); // write a render block write(<ref>Image.GIF.render_block</ref>(img2,nct,0,0,0,10)); // write a render block [...] write(<ref>Image.GIF.end_block</ref>()); // write end block // voila! A GIF animation on stdout.
The above animation is thus created:
object nct=Image.Colortable(lena,32,({({0,0,0})})); string s=GIF.header_block(lena->xsize(),lena->ysize(),nct); foreach ( ({lena->xsize(), (int)(lena->xsize()*0.75), (int)(lena->xsize()*0.5), (int)(lena->xsize()*0.25), (int)(1), (int)(lena->xsize()*0.25), (int)(lena->xsize()*0.5), (int)(lena->xsize()*0.75)}),int xsize) { object o=lena->scale(xsize,lena->ysize()); object p=lena->clear(0,0,0); p->paste(o,(lena->xsize()-o->xsize())/2,0); s+=Image.GIF.render_block(p,nct,0,0,0,25); } s+=Image.GIF.netscape_loop_block(200); s+=Image.GIF.end_block(); write(s); - Parameter
img -
The image.
- Parameter
colortable -
Colortable with colors to use and to write as palette.
- Parameter
x - Parameter
y -
Position of this image.
- Parameter
localpalette -
If set, writes a local palette.
- Parameter
alpha -
Alpha channel image; black is transparent.
- Parameter
r - Parameter
g - Parameter
b -
Color of transparent pixels. Not all decoders understands transparency. This is ignored if localpalette isn't set.
- Parameter
delay -
View this image for this many centiseconds. Default is zero.
- Parameter
transp_index -
Index of the transparent color in the colortable. -1 indicates no transparency.
- Parameter
user_input -
If set: wait the delay or until user input. If delay is zero, wait indefinitely for user input. May sound the bell upon decoding. Default is non-set.
- Parameter
disposal -
Disposal method number;
- Note
-
This is in the advanced sector of the GIF support; please read some about how GIFs are packed.
The user_input and disposal method are unsupported in most decoders.
- See also