img-gif - Img, Graphics Interchange Format (gif)
package require Tk
package require img::gif ?1.4?
image create photo
The package img::gif
is a sub-package of Img
. It can be loaded as
a part of the complete Img support, via package require Img
, or on its
own, via package require img::gif
Like all packages of Img
it does not
provide new commands, but
extends the existing Tk
so that it supports files
containing raster images in the Graphics Interchange Format (gif). More
The name of the new format handler is gif
. This handler provides new
additional configuration options. See section GIF OPTIONS
All of the above means that in a call like
- image create photo ?name? ?options?
- Image data in gif format (options -data and -file) is
- The format name gif is recognized by the option -format. In
addition the value for the option is treated as list and may contain any
of the special options listed in section GIF OPTIONS.
The handler provides two options, one for reading from a GIF image, the other
influencing the writing of such.
- -index n
- This option is for reading from GIF files containing more than one image (
animated GIF's, GIF movies. When specified it will read the
n'th image in the data. The first image is at index 0 and
will be read by default, i.e. when the option is not specified.
- -interlaced bool
- If the value of this option is set to true the image will be written using
the interlaced sub-format of GIF. The default is to write non-interlaced
files. This option is not implemented yet.
Instead of LZW the run-length encoding of Hutchison Avenue Software Corporation
is used, also known as miGIF
compression. The miGIF compression
routines do not, strictly speaking, generate files conforming to the GIF spec,
since the image data is not LZW-compressed (this is the point: in order to
avoid transgression of the Unisys patent on the LZW algorithm.) However, miGIF
generates data streams that any reasonably sane LZW decompresser will
decompress to what we want.
If you want to write images to disk which contain transparency information (e.g.
GIF89) you need at least Tk
img-bmp, img-dted, img-gif, img-ico, img-intro, img-jpeg, img-pcx, img-pixmap,
img-png, img-ppm, img-ps, img-raw, img-sgi, img-sun, img-tga, img-tiff,
img-window, img-xbm, img-xpm
gif, image handling, tk
Copyright (c) 1995-2009 Jan Nijtmans <email@example.com>