In addition to this help file, you might find the BlendGIF manual useful
Telling BlendGif what images to use
There are several ways you can tell BlendGif what GIF images to use:
- A file on this server.
- BlendGif will look in the IMGLIB subdirectory of the special BLENDGIF ROOT directory (which is created by the webmaster) for a file of this name. Example: HELLO.GIF
- GET an image from another server.
- Enter a fully qualified URL. This should be a URL pointing to GIF file anywhere on the net. BlendGIF will use socket calls to retrieve this image (assuming it's not password protected).Example: http://www.census.gov/main/www/img/cb_head.gif
- Upload a file from your hard drive.
- If you are using a modern browser (NetScape 2.01 and above), you can upload a GIF file from your hard drive. All you have to do is enter it's name (or you can use a BROWSE button) in the Uploading your own GIF files section.
- Retrieve the URL of an image that is being displayed in the VIEWER window.
Description of options
- Uploading a BlendGIF option file
- There are two ways of specifying your animated GIF:
- By using the fields on this form to choose options
- By uploading a special BlendGIF input file The second option requires that you create an ascii (text) file on your machine, and enter it's name in the Upload load options from a file field. This file should contain a list of option names, and their values.
INFILE.0=2For details on parameter names, please see the BlendGIF manual
- The list of GIF images to "blend"
- You can specify up to 7 images to "blend". You can also select which "frame", in an animated GIF, to use.
- you can enter a file name or a URL
- URLs must start with http://
- Filenames are relative to this server's () "BlendGif" directory
- BLENDGIF will use socket calls to retrieve URLS. The content returned from the server must have a content-type response header of image/gif.
- the file must be a GIF file (BMP, JPEG, etc. will not be read).
- the size of the animated gif is set by the Size of image option (with possible modifications via the image-specific transformations)
- Advanced option: Instead of a server-file or a URL, you can upload your own GIF files
- Image number
- This image number refers to a frame within an animated gif - this option allows you to pluck one of the frames from a pre-existing animated GIF . If the GIF file you wish to use is not an animated GIF, the image number is ignored (since there is only one image to choose from).
- Number of times to display the set of images
- Iterations should be an integer greater then 0.
- Delay between frames
- In 1/100th seconds. Thus, a value of 50 means 1/2 second.
- Number of frames between each image pair
- More frames means smoother transitions, but also means larger files and longer processing time.
- Cycle images back to first image
- You can create a "cyclical" animated GIF, with the display of intermediate images reversed. This is a nice way of smoothing repeated displays, you avoid discontinuous jumps between the last and first image. Alternatively, one could specify a sequence of images that start with a first image, have the "last" image in the middle, and end with the first image - but that doubles the processing time required.
- Setting the size of the image
- There are three choices:
- Use the size of the first image
- Use the maximum height, and maximum width - where the maximum is computed over all images
- Specify a width and height The Width and height fields are only used when the Specify a width and height option is chosen (otherwise, they are ignored).
In addition to this automatic size computation, you can specify image-specific transformations.
- Attempt to minimize the size of the final GIF file
- By default, BlendGIF uses a fairly inefficient method of storing image information: each frame contains a complete image. That is, each frame of the animated GIF "covers" the full width and height of the image. Since in many cases only a fraction of the pixels change between frames, the size of the final image ile can be substantially reduced by using "retain prior image" features of the GIF standard. You can instruct BlendGIF to attempt to shrink the file size (using this retain prior image trick). This requires an additional step, which is attempted after all frames have been computed (hence, it requires additional processing time).
Caution: the results of this "shrinkage" may cause some browsers to crash!
- Immediately upload image
- After BlendGIF constructs your animated GIF, it can either:
- Immediately transfer it to you.
This requires a browser that suports maintained connections
- Do not immediately transfer the image.
Instead, save it as a temporary file, which you can then obtain (by clicking on a link).
If you want to save your results, use this option Note that the temporary file will be retained (on this server) for a short time period.
- Immediately transfer it to you.
- Stop after this many frames
- Instead of creating all the frames, stop after you've drawn this many framees. This can create some interesting partial replacements, especially when combined with the cycle-back option. To suppress this trick (that is, to display all the frames), leave this field blank.
- Suppress transparency
- If selected then either:
- none of the images in the animated gif will be "transparent".
- The "intermediate" frames will not be transparent
- Any frame may be transparent When not explicitly disabled, transparency is based on whether the specified images were transparent. In some cases, transparency seems to cause odd problems, which can be solved by enabling this option.
In other cases, enabling transparency can improve the image (as when trying to add images to pre-existing images).
- Set the accuracy of "best fades"
- Processing fades requires matching colors determined on the fly to a color in the global color table. To expedite this process, a 3 dimensional index is created. You can set the size of this index - larger values tend to yield smoother fades, but can greatly increase processing time.
The default value (16) seems to be a reasonable compromise between speed and quality.
- Image disposal
- How to dispose of images. When using automatic resizing this parameter may have little effect. However, when using image-specific transformations, this can have a major impact (on whether prior images are retained or erased).
- Colors in merged color table
- The length of the "global" color table BlendGif will create a combined color table using all the images you specify. This "global" color table is used to display the intermediate images.
Note that the original images will be displayed with their own "local" color table.
- Merge color table by
- It's quite possible that the combined number of colors (in the merged color table) is greater then 256 (256 is the maximum number of colors a GIF can use), In such cases, BlendGif will need to pick and choose which colors to use. CT_MAKE_SPEC is used to select from three different methods:
- use the most frequent colors
- use the most frequent colors, but also use some "average" colors (these are chosen to minimize the "distance" of all colors in all images to the closest color in the global color table.
- similar to 2, but create more of the "average" colors. Method 1 is fastest, but may do a bad job of displaying infrequently used colors. Methods 2 and 3 provide some insurance against this problem, but are slower.
- Background colors
- These values are used for pixel 0. This color is used when you've selected no resizing of images, and an image is smaller then a user specified height and width. Note that Pixel 0 is displayed when transparency is turned off. You should enter a value between 0 and 255 (inclusive) -- where 0 is "no color" and 255 is "maxiumum brightness".
Description of animation-types
Several types of blending (animation types) are supported, each of which can be further modified using one or several parameters.
In the following descriptions, first and
second image refers to images in an image-pair
|ADD|| The second image is added on top of the first image.
Intermediate frames are not created -- the second image simply is placed on top of the first image.
If you want to retain portions of the first image, so as to "sequentially build" a final image, you can:
|BALLOON||The first image is replaced by an expanding "balloon" of the second image.||
Four balloon types are recognized:
Three overwrite modes are available:
|CURTAIN||The second image is a curtain pulled over the first image||
Three overwrite modes are available:
The first image dissolves into the second image
DISSOLVE works by randomly replacing image1 pixels with image2 pixels; with latter frames containing a greater proportion of image2 pixels.
You can customize the speed of the dissolve by modifying the dissolve speed. This parameter should contain a space delimited list of integers between 0 (0 percent-- use image 1 pixels) to 100 (100 percent -- use image 2 pixels). These values are used to create a graph, with each frames "dissolve threshold" read from the graph.
|FADE||The first image fades into the second image.||
There are several ways of specifying a fade:
|MASK||"Mask" files are used to overlay portions of the second image onto the first image.||
If a pixel value in a mask file pixel value is greater then 0, then the corresponding pixel in image 1 (the one at the same row and column position) is replaced with the corresponding image 2 pixel.
Note that the mask files are either replicated or clipped to assure that their size corresponds to the size of the first image.
Advanced options: Grabbing a URL from the VIEWER window
As an aid to us lazy folks, you can use the VIEWER window to search for images, and then tell BlendGif to use them. With one large exception, this is easily done by:
- Using everyday browser features (such as right-mouse-button on an embedded GIF image), view a GIF in this VIEWER window (not the document in which the GIF is embedded -- you must view the GIF itself)
- Click the appropriate grab from viewer window button.
But there is that crucial caution: the images you grab must be on this server (). If not, JavaSript security may kick in, and shutdown your browser.
Advanced options: Layering images (on top of prior images)
When BlendGIF creates an animated GIF, it's usual mode of operation is to completely replace one image with a new image; where this new image is either an "intermediate" frame, or the next image you specified. In cases where one wants to "layer" images (that is, to paste new images on top of previous images), BlendGIF's usual mode is inappropriate.
However, the ADD animation type, in combination with image-specific transformations, can be used to create layered images.
- You'll need to specify the same image file (or URL) for several images, and then select your desired image-specific transformations (say, successively larger rightward shifts).
- When you specify multiple values in one of the image-specific transformation fields, the images are non-cumulative. However, they are layered on top of the prior image, and the last frame in such a series will be retained.
- You probably should specify an explicit image size greater then the images you are layering
You can also achieve some "layering" effects by:
- using the stop-after and the # of frames parameter equal to 1, and use image-specific transformations.
- It's a bit of a hack, but if your images have a lot of "transparent" pixels, you can select Do NOT suppress transparency and select the retain disposal option