The gifcompose program uses the GIFLIB utility tools to support a minilanguage
for describing GIF pasteup sequences.
gifcompose [-v] <specfile
The gifcompose tool takes a series of text lines and interprets them as
commands to do pasteup operations. The commands are:
Paste in <name>.gif
raw <name> <width> <height>
Paste in the given raw-format file (no suffix supplied). Raw format
is a stream of 8-bit indices into the EGA color map. Accordingly, the
width and height must be specified, and the source must be exactly
width times height bytes long.
rgb <name> <width> <height>
Paste in the given RGB-format file (no suffix supplied). Raw format
is a stream of 24-bit color values. Accordingly, the width and height
must be specified, and the source must be exactly 3 times width times
height bytes long.
Paste in the given RLE-format file (no suffix supplied). This converts
the Utah Raster Kit format to GIF.
text <text> [foreground <index>] [color <r> <g> <b>]
Copy 8x8 monospace font, with transparent background and index 1 as
foreground. If the text string contains whitespaces, they must be
escaped or the string must be quoted (shell conventions).
The optional suffix `foreground <n>' sets the foreground color index.
The optional suffix `color <r> <g> <b>' sets the RGB color to be used
for the foreground index.
Each generator operation may be followed by any combination of the
at <x> <y>
Place the image at the given (upper-left-hand-corner) coordinates
in the pasted-up result.
clip <name> <top-x> <top-y> <bottom-x> <bottom-y>
Clip image using the given rectange, paste it onto.
Flip the image around the X axis before placing it.
Flip the image around the Y axis before placing it.
Rotate the image 90 degrees counterclockwise before placing it.
Rotate the image 90 degrees clockwise before placing it.
screen size <x-size> <y-size>
Set the global screen size of the final image.
screen position <x> <y>
Set the global screen position of the final image.
Comments or comment lines may be preceded with `#' and will be ignored.
Proportional to the size of the largest pasted image.
Emit a report on each composition action to stderr as it happens.
The suffix sequence `left left' sometimes mysteriously fails to work,
probably due to some restriction in gifflip.
No support for resizing or odd-angle rotations yet.
The `color' suffix of text is a no-op, because the present version of
gifovly throws away color tables.