Table of Contents
xlito (XLoadImageTrailingOptions) - Append/Delete/Show a Trailing
Option string in a file.
xlito [option] [string] files ...
xlito
(XLoadImageTrailingOptions) is a utility that provides a file format independent
way of marking image files with the appropriate options to display correctly.
It does this by appending to a file, a string specified by the user. The
string is marked with some magic numbers so that it can be extracted by
a program that knows what to look for. Since almost all image files have
some sort of image dimension information in the file, the programs that
load or manipulate these files generally do not look beyond the point at
which they have read the complete image, so trailing information is safely
be hidden. If appending this information causes trouble with other utilities,
it can simply be deleted.
Appropriate version of xloadimage (ie. xli 1.00)
will recognise these trailing options at the end of the image files, and
will treat the embedded string as if it were a sequence of command line
Image Options. Any Global Options will be ignored, and unlike command line
image Options, Trailing Options are never propagated to other images.
Old
versions of xloadimage (3.01 or less) can be made forward compatible by
using the -x option to pull the trailing options out of the image files,
and put them on the command line where xloadimage can see them.
The
default behavior is to display the trailing option strings (if any) of
the files on the argument line. The following options change the behavior
of xlito:
- -c option_string file_name ...
- This adds or changes the embedded
string to option_string. The string will have to be quoted if it is composed
of more than one word.
- -d file_name ...
- Delete any embedded trailing option
strings in the given files.
- -x file_name ...
- Process the files and create a
command line string suitable for use by xloadimage. Arguments starting with
- are echoed, arguments not starting with - are treated as files and any
trailing options strings are echoed followed by the file name. The xloadimage
option -name is treated correctly.
If fred.gif has the wrong aspect
ratio, then it might need viewing with the xloadimage options:
xloadimage
-yzoom 130 fred.gif
This option can then be appended to the file by:
xlito
-c "-yzoom 130" fred.gif
and from then on some new versions of xloadimage
will get the appropriate options from the image file itself. Old versions
of xloadimage can be made to work by using:
xloadimage gaxlito -x fred.gifga
This can be made transparent by using a script containing something like:
xloadimage gaxlito -x $*ga
The script could be called xli for instance.
The options can be deleted with:
xlito -d fred.gif
Graeme Gill
Labtam Australia
graeme@labtam.oz.au
smar@reptiles.org
Some image files are actually ascii files
that are used in other contexts. X Bitmap files are an example. They are
formatted as 'C' style #defines and an initialised array of characters, so
that they can be included in 'C' source code. Adding trailing options would
therefore render the file unusable with a compiler, since it will get a
syntax error on the railing option string and the magic numbers. The solution
to this is that xlito will ignore a certain amount (a few hundred bytes)
after the trailing options, and uses a padding of 20 bytes before the trailing
options. These two areas will be maintained when changing an existing trailing
option. In the case of an X bitmap then, the solution is to edit the file
and place the embedded string in some 'C' comments:
eg: say the file starts
as:
#define tt_width 4
#define tt_height 4
static char tt_bits[] = {
0x08, 0x02, 0x04, 0x01};
and you add a trailing options:
#define tt_width 4
#define tt_height 4
static char tt_bits[] = {
0x08, 0x02, 0x04, 0x01};
01234567890123456789XXX xloadimage trailing options XXX0007"-smooth"0007XXX
xloadimage trailing options XXX
Then the trailing options can be commented
out:
#define tt_width 4
#define tt_height 4
static char tt_bits[] = {
0x08, 0x02, 0x04, 0x01};
/*234567890123456789XXX xloadimage trailing options XXX0007"-smooth"0007XXX
xloadimage trailing options XXX */
xlito doesn't cope with compressed
files. A files will need uncompressing, the options added, and then compressing
again.
Table of Contents