## GIF_text: Description and Acknowledgments

### Description of options

The following briefly decribes the options mentioned in the form above. For a more complete description of the available options, see the GIF_TEXT documentation.

Option | Description
Style Files | Instead of specifying all the options everytime you fill out this form, you can read (or create) a style file : Read options stored in a style file: Options you specify in the form will not be used; instead, options stored in the style file sare used. Of course, the message you enter here will be used (messages are not retained in style files). Save options to a style file: the options you specify in the above form will be used, and will also be saved to the style file you specfied (in the style file textbox) Notes: If you save to a style file, then the options you specify in the form will first be used to create your image, and then will be written to the style file. If you save to a style file, and neglect to enter a filename in the style file textbox, a filename of DEFAULT will be used. Old style files, with the same name, will be overwritten. Enter only the filename -- do not include path information. You can, but do not need to, include an extension.
Saving the image to a file | For complicated images (those using color slides or backgrounds), you may be unable to save the final image (your browser's `save this image as` option might not work properly). If you'ld like to be able to save the images you create, check the `Do you intend to download this image?` check box. This option instructs GIF_Text to create a temporary file on the server. After the image is displayed, you can then download this temporary file. Special Feature: By using these temporary files as backgrounds (with the specify a file to use as a background option), interesting effects are possible. In particular, when combined with right and down offsets, a shadow effect is easily created.
The message | The message. Note that for many FONTs, upper case will be used instead of lower case. Also, odd characters (such as [}*%) may be displayed using a simpler font. Lastly, the $ character has a special meaning: with $T, $D, and $B signfying the time, date, or a filled box.
The following options are used only when you are not reading a style file
Alphabyte (or complete) font | The message is written with this "alphabyte" (1 GIF file per character) or "complete" (a single GIF file containing all the characters) font. Within a message, you can use `$F(fontname)` to switch to a different alphabyte or complete font. For example: $F(hobo) Technical note: when specifying an alphabyte (or a complete font) the fontname should be the name of a "font sub-directory" under GIF_TEXT's GIF_ROOT_DIR directory.
TTF fonts | Instead of using alphabytes or complete fonts, you can generate character bitmaps on-the-fly from a true-type font (TTF). You should specify the (relative) name of a file on this server. Within a message, you can use `$F(!nn_fontname)` to switch to a different TTF font For example: `$F(!25_arial)` If GIF_TEXT is being run as an SRE-http addon, you can specify a fully-qualified URL (including the `http://`) of a .TTF file. GIF_TEXT will attempt to retrieve it off-the-WWW. Note that this must be .TTF file -- not a .ZIP file containing a .TTF file. Technical note: TTF file names are relative to GIF_TEXT's TTF_ROOT_DIR directory.
Background | A background image to use (instead of a single background color). This image can be a scaled, or repeated, to fit the area required for your text image. Special Options: You can specify the (relative) name of a file on this server. In particular, you can use one of the temporary files created by the `Do you intend to download this image?` option. If GIF_TEXT is being run as an SRE-http addon, you can specify a fully-qualified URL (including the `http://`) of a .GIF file. GIF_TEXT will attempt to retrieve it off-the-WWW, and use it as a background image.
Color slide | A foreground image to use. Colors in this image are used instead of the colors that the `alphabytes` are drawn with. Special options: You can specify the (relative) name of a file on this server. If GIF_TEXT is being run as an SRE-http addon, you can specify a fully-qualified URL (including the `http://`) of a .GIF file. GIF_TEXT will attempt to retrieve it off-the-WWW, and use it as a color slide.
Character width and height scaling factors | Transform the height and width of each character in the message, on a character by character basis (thus, some characters will be taller and wider then others).
Image width and height | You can specify the width and height of the entire image. If empty (or set to 0), GIF_TEXT will determine the width and/or height (as a function of the length of the message, the FONT selected, and the character specific width & height scaling). If not empty, GIF_TEXT will rescale the image to fit into this height and/or width (note that this rescaling occurs after character specific scaling).
Vertical alignment | Align each character at the top, the bottom, or the middle of the "character box". For one line images, the character box is the height of the image (minus a frame); for multiple line images, the character box is the height of the current line (of image text)
Line justification | If a multiple line message is specified (using `$N` special characters), line justification specifies how each line should be horizontally justified.
Right offset | Offset (in pixels) the image to the right by this amount (can be a negative value).
Left/right frame | Frame size (in pixels) for left and right size of image (in other words, this sets the left & right "margins"). Note: if selected width=200, the right offset=5, and the left/right frame=10, the actual message area will be 175 pixels wide.
Down offset | Offset (in pixels) the image down by this amount (can be a negative value).
Top/bottom frame | Frame size (in pixels) for top and bottom of image (in other words, this sets the top & bottom "margins").
Color slide horizontal fit | When the color slide is not the same width as the image, you can stretch the slide to fit, or you can repeat the slide.
Color slide vertical fit | Similar to horizontal fit, but only used when the color slide is more then one row high. Note that using a same slide for all rows option will convert (for this image only) a multi-row color slide into a single row color slide.
Color slide measured from | Use this to create a color wash starting from anywhere in the image; with 0 0 defined as the top left corner, and 1 1 as the bottom right. The distance from this point to a pixel in the message image is used to determine which color slide pixel to use. In contrast, leaving this empty will cause a columnwise match to be used (after stretching/tiling).
Color slide distance computations | Computing a distance, for use with a color slide, can use one of four algorithims. The linear distance is the smoothest, but can be quite time consuming. A grid-cell distance is faster, and a longest-dimension is fastest. A modifed grid-cell distance, which yields results quite close to the linear distance and is almost as fast the fastest, is recommended.
Color slide threshold | Use this to determine how to decide which message image pixels to convert to color slide colors. You can use the pixel number, or the maximum or the average brightness (of the RBG colors). You can also have this threshold vary over the image.
Color slide probability | A fade-into effect: determines the probability of using a color slide color (given the threshold has been met). High probabilities (near 1.0) mean use the color slide color, low probabilities (near 0.0) mean to use the alphabyte's color.
Number of colors in user defined color slide | Instead of using a color slide file (a .GIF file), you can specify your own. The size (which should be less then 255) determines the length & number of colors in this color slide
Red, Green, Blue user defined color slide intensity parameters | Each of these should be a space delimited list of values between 0 and 1. Each of these are used to create graphs (with segment endpoint defined at each of these values). The user defined color slide is determined by the looking up (an R,B, and G value) on these graphs. Example: for a blue color intensity that starts at 0 (no blue), increases to 255 (fully saturated), and then tapers off to 85 (mild blue), you would enter `0.0 1.0 0.33`
Mask file | The mask file is used to mask the final image (the image with text, background, and color slide). The masked portion of the image will have pixel values of 0 (which usually means they'll be transparent). The mask file should be any .GIF file in (or relative) to the installation directory of GIF_Text. Or, if this server is running SRE-http, you can enter a URL pointing to a .GIF file. There are a few masking options: `Scale mask:` as with color slides and background, you can stretch the mask .GIF file to fit the image being created, or you can tile it. `reverse mask`: is used to reverse the mask, so that "high valued" pixels will mask (will set the image pixels to 0). `threshold`: select a pixel value threshold for masking (by default, pixels of 0 are assumed to mask)
Background and Text colors | The background and text (foreground) color. Used when background images and color slides are not used.
Transparent color index | Used to allow background to show through -- a value of 0 (the default) is almost always used.
Scale background | Stretch or tile the background image (to the size determined by height & width).
Time and Date format | Select one of several time and date formats. Note that the time is written when a $T is included in the message, and the date when $D is included.

### Acknowledgements

This utilty would not have been possible without RXGD101.DLL ".GIF" library; a port of the GD library by Andy Wysocki.

...and, it would have been useless without the various and sundry alphabyte fonts and backgrounds, which were obtained from:

Rosie's Alphabytes
  http://www.geocities.com/HotSprings/3055/alphabet.html (logo)
E-Mom's Rainbow Graphic Designs:
  http://members.xoom.com/e_mom/
Andy's Art Attack:
  http://www.andyart.com (logo)
You might also want to check out ...
  - over 100 fonts/alphabytes at Daniel Guildkrans site
  - Several more alphabytes /at http://www.mangus.com/alphabet.html
  - a zillion "digit collections" (useful if you are interested in using GIF_TEXT as a clock) at http://www.digitmania.holowww.com
A source for buttons include:
  http://www.andyart.com,
A source for TTF fonts:
  FONTS.TEDESIGN.NET