Introduction to AniTuner

AniTuner creates, edits and converts Windows animated cursor files (.ani) files that contain an animated mouse pointer. You can use animated cursors to customize the appearance of Windows (themes) but also to insert animations in your Web pages, e-mails, documents or even applications...

For example, five animated cursors were converted to animated GIF that you can see below:

With AniTuner you have a lot of possibilities:

  • open and display any animated cursor.
  • convert animated GIF and AVI into animated cursors (ANI).
  • import existing image files (BMP, JPG, GIF, PNG, PSD, CUR, ICO) to turn them into cursors or animated cursors.
  • export frames from your animated cursors to several image formats.
  • modify existing animated cursors and change their color depth or size.
  • convert animated cursors into animated GIF, AVI, static bitmaps or even Macromedia Flash SWF movies.
  • edit frames, change their duration, modify them in your favorite image editor and save changes back to the animated cursor.
  • AniTuner handles all cursor sizes (not only 32x32) & color formats (from 1bpp to 32bpp).
  • special support for 32-bit cursors with a 8-bit alpha channel (partial transparency for Windows 2000/XP).
  • turn your old 16 or 256-color animated cursors into 32-bit animated cursors with a semi-transparent shadow for Windows XP.
  • export (and import) animated cursors as a series of PNG files (with alpha channel optionally).
  • browse for animated cursors on your computer and preview them before opening in AniTuner.

AniTuner features an easy-to-use XP-like interface that lets you visually edit and convert all of your animated cursors in a snap. AniTuner is the successor of our old product called AniToAvi Wizard, and is a full freeware program.

» Select the following links to continue with AniTuner help:

Getting Started

What is an animated cursor? (important)

Opening an animation file


Getting Started

When you open AniTuner, it displays the Welcome page and you have the choice between three options:
  1. Open an existing animation file
    Click this button to select an animated cursor (ANI), an animated GIF (GIF) or a Video for Windows (AVI) file. If you select an animated cursor, AniTuner will open it and display the Properties page. Otherwise it will perform the conversion of the animation file.
  2. Create a new animated cursor
    This starts a blank animated cursor with default parameters: the Properties page is displayed and you can change settings like cursor size, number of colors and art information (author & title). A single blank frame is automatically added to the new cursor. Then click on "Edit cursor frames" to import existing image files and create new frames for your animated cursor.
  3. Browse for animated cursors
    If you want to preview available animated cursor files on your computer, click on this button. A window similar to the Open dialog will be then displayed allowing you to navigate through your folders and select the .ani files you wish to see.

How to navigate through the different options

When an animated cursor is opened in AniTuner, the two following panels are displayed:

  • The Tools panel lets you navigate between the different pages of AniTuner. You will always use this navigation bar; it works like the ones available in Windows XP.
    » This screenshot contains hot areas (this is a map image): click on the desired area to open the associated help topic.

  • The second panel displays the live animated cursor. You can of course resize this panel if the cursor does not fit the area.

What is an animated cursor?

Opening an animation file

Browse for animated cursors


What is an animated cursor?

Please read the following topic because it contains useful information about how AniTuner creates animated cursors.

How are stored animated cursors?

The .ani file format is used for reading and storing Windows Animated Cursors (animated mouse pointer). A .ani file is a structured format (Microsoft RIFF) that contains information about the animation (author & title, steps, length & order of each step...) followed by several frames stored in the icon format.

Like movies and cartoons, several icon frames such as [image] are displayed one by one and this leads to the final animated cursor: .

Each frame/step in an animated cursor is displayed during a short time (delay or length): this is the frame timing.

This time is measured in jiffies; 1 jiffy=1/60th of a second~16,66ms.

What are icons and why do they look transparent?

An icon is a picture that consists of a bitmapped image combined with a mask to create transparent areas in the picture.

In AniTuner the most important bitmap called "Color bitmap" contains the non-transparent image (what we want to show) and the rest of the bitmap (the background) is filled with a given color named the transparent color; on this example the transparent color is fuchsia:

The second bitmap is called the "Mask bitmap": this bitmap contains only two colors: black and white. The black region corresponds to the transparent part of the color bitmap and the white region to the non-transparent part:

The color bitmap is then combined with the mask bitmap to render transparency. We take a pixel in the color bitmap: if the corresponding one in the mask is black, then we know that the resulting pixel should be transparent. Otherwise if the corresponding one in the mask is white, then the colored pixel is displayed. This gives the following result:

When creating a cursor frame (icon format), AniTuner takes the color bitmap and replaces all pixels corresponding to the transparent color with black. On the contrary remaining pixels are replaced by white. You get the "mask bitmap" that will be used to create the icon transparency.

So be sure to always select a transparent color that is not used in your image. Generally fuchsia or teal are good choices for the transparent color.

How can I use animated cursors with Windows?

If your .ani files are correctly associated, you can preview them using Windows Explorer: just hit an animated cursor file and select the File Properties shell menu command. Windows will then display the animated cursor on the Properties tab.

Animated cursor may also be used to customize the Windows mouse pointers too: the mouse applet in the Windows control panel lets you change the cursors used during different operations (wait, no selection, etc...). Select the "Pointers" tab in the mouse applet and then highlight the pointer you want to replace. Click on the "Browse" button and finally select the animated cursor you want.

For programmers only

If you are interested in the animated cursor format itself, then visit the useful site www.wotsit.org by Paul Oliver, and look for ANI.
Otherwise you can read the following extract of a post by R. James Houghtaling regarding the ANI format:

<< This is a paraphrase of the format. It is essetially just a RIFF file with extensions... (view this monospaced)
This info basically comes from the MMDK (Multimedia DevKit). I don't have it in front of me, so I'm going backwards from a VB program I wrote to decode .ANI files.

"RIFF" {Length of File}
"ACON"
"LIST" {Length of List}
"INAM" {Length of Title} {Data}
"IART" {Length of Author} {Data}
"fram"
"icon" {Length of Icon} {Data} ; 1st in list
...
"icon" {Length of Icon} {Data} ; Last in list (1 to cFrames)
"anih" {Length of ANI header (36 bytes)} {Data} ; (see ANI Header TypeDef )
"rate" {Length of rate block} {Data} ; ea. rate is a long (length is 1 to cSteps)
"seq " {Length of sequence block} {Data} ; ea. seq is a long (length is 1 to cSteps)

-END-

- Any of the blocks ("ACON", "anih", "rate", or "seq ") can appear in any order. I've never seen "rate" or "seq " appear before "anih", though. You need the cSteps value from "anih" to read "rate" and "seq". The order I usually see the frames is: "RIFF", "ACON", "LIST", "INAM", "IART", "anih", "rate", "seq ", "LIST", "ICON". You can see the "LIST" tag is repeated and the "ICON" tag is repeated once for every embedded icon. The data pulled from the "ICON" tag is always in the standard 766-byte .ico file format (for the 16-color animated cursors only).

- All {Length of...} are 4byte DWORDs.

- ANI Header TypeDef:

struct tagANIHeader {
DWORD cbSizeOf; // Num bytes in AniHeader (36 bytes)
DWORD cFrames; // Number of unique Icons in this cursor
DWORD cSteps; // Number of Blits before the animation cycles
DWORD cx, cy; // reserved, must be zero.
DWORD cBitCount, cPlanes; // reserved, must be zero.
DWORD JifRate; // Default Jiffies (1/60th of a second) if rate chunk not present.
DWORD flags; // Animation Flag (see AF_ constants)
} ANIHeader;

#define AF_ICON =3D 0x0001L // Windows format icon/cursor animation

R. James Houghtaling >>

Opening an animation file

Browse for animated cursors


Animated Tutorial

The animated tutorial is available online at AniTuner's Web homepage. This is a small streaming Flash SWF movie that will show you the basic steps about how to create and convert animated cursors. Highly recommended if you wish to easily see what to do with AniTuner.

Click here to jump to its page or visit http://www.gdgsoft.com/anituner and select "Animated Tutorial".


Program Options

You can set up program options for AniTuner by pressing on the [image] button available at the top-right corner of the window.
  • Image Editor:

Since AniTuner does not feature an internal image editor, you need your own image editor if you wish to edit cursor frames. This can be a simple bitmap editor like Microsoft Paint to more powerful image editing software like Adobe Photoshop (R), Jasc Paint Shop Pro (R), Microsoft Photo Editor (R), etc...

In the Frame Editor, you can edit a frame by pressing "Edit Image". The image editor is then launched to edit the frame image. This option lets you specify the editor you want to use: it can be the default one (the same as the one that is opened by Windows when you double-click on a bitmap file in Windows Explorer) or the one of your choice. In the last case, you have to enter the full path to the program file of your image editor.

  • Export temporary frame image in PNG format

The frame is by default exported in the Bitmap format. But if your image editor supports the PNG format, then you can enable this option. In this case AniTuner will save temporary frames as PNG files (this format is useful for 32-bit cursors).

  • Ask for the resizing method

When importing an image as a frame, if the selection does not fit the current animated cursor size, AniTuner prompts you for the resizing method it should use to correct this problem. If you do not want to be prompted, then enable this option. In this case AniTuner will always rescale the selection to fit the cursor size.

Once you have finished with the options, you can return to the previous page you were before pressing the Options button.


Opening animation files

AniTuner not only supports loading animated cursors (.ani) but also AniTuner disassemblies (.atd), animated GIF (.gif) and video for Windows (.avi) files. The last two formats can be converted into animated cursors ready to be edited or saved.

You can load a new animation on the Welcome screen or by clicking on "Load new animation" in the Tools panel.

You may also drag an animation file from Windows Explorer onto AniTuner main window and then drop it. The file will be then opened.

If you select an .ani, the animated cursor file will be opened by AniTuner and the View Properties page will be displayed.

If you select an .atd (AniTuner disassembly), the new animated cursor file will be generated according to the instructions in the .atd file and the View Properties page will be displayed.

If you select a .gif or a .avi, the following dialog will be opened:

This dialog works exactly as the one for the Import Image function. So please read this help topic to find more information about the different options.

You have to select the portion of the animation that you want to transform into an animated cursor and the color that will be used as transparent when creating the mask bitmap.

You only have to do this for one frame (you can even select the frame you want using View Frame) and AniTuner will import all other remaining frames using the same settings (selection & transparent color). After pressing OK, the new animated cursor will be created.

Regarding color format, AniTuner always creates a 8-bit animated cursor when converting from animated GIF (256 colors) and a 24-bit animated cursor from .avi clips (true colors). You can afterwards change the cursor color format here.


Browsing for animated cursors

Do you wish to preview animated cursors before you open them in AniTuner? If yes, you can do this by clicking on the "Browse for animated cursors" link in the Welcome page.

A window similar to the Windows File Open dialog will be then displayed allowing you to navigate through your folders and select the .ani files you wish to see:

This window may be resized or even maximized if you need it.

If your folder contains a lot of animated cursor files (> 100 for instance), it may require a small delay to load and process all animated cursors (depending on your computer configuration and Windows version).


View Cursor Properties

When an animated cursor is opened, the "View animated cursor properties" page is automatically displayed. You can also access it by clicking on "View cursor properties" in the Tools panel.

This page contains all information about the animated cursor such as title, author, color depth & size, hotspot... Here is a brief explanation about all of these settings:

Cursor Title & Author Name (optional): indicates the title of the cursor and the name of the person who drew its frames. Not all animated cursors contain this information but it is recommended that you enter your name to "protect your creation". Don't forget that animated cursors are intellectual properties of their respective authors.

Color format: indicates the number of colors used in the animated cursor's frames. All frames should have the same color format. You can press the Change button to select another color format as described here.

Images size: indicates the height & width of the cursor's frames. All frames should have the same size. You can press the Change button to select another size as described here.

Hotspot: in Windows cursors, a pixel called the hot spot marks the exact screen location that is affected by a mouse event, such as clicking a mouse button. Typically, the hot spot is the focal point of the cursor. The system tracks and recognizes this point as the position of the cursor. For example, typical hot spots are the pixel at the tip of an arrow-shaped cursor and the pixel in the middle of a crosshair-shaped cursor.

To let you visually set up the hot spot point, AniTuner displays the first frame on which a small red cross is drawn. You can click anywhere on this image to change the hotspot to a new location. The coordinates of the hotspot are then automatically actualized.

Animation info: indicates the number of frames available in the cursor, the duration in seconds approximatively and in jiffies (a jiffy equals a 1/60th of a second).

Test Cursor: pressing this button will change the default mouse cursor to the animated cursor and this lets you see how your cursor works in Windows. The cursor is replaced during 30 seconds but you can immediately come back to the default arrow cursor by pressing the "Test cursor" button again.

Note that Windows only displays 32x32 cursors. Moreover 32-bit icons won't display correctly on Windows 9x/ME/NT4 as these systems do not support alpha transparency introduced with Windows 2000 and XP.


Change Size

Change Cursor Size

You can resize the frames of the animated cursor. Click on "View cursor properties" in the Tools panel and click on the Change button corresponding to the Cursor Size label.

Remember that Windows only supports displaying 32x32 animated cursors!

You can select a new size for the animated cursor in the pre-defined size list, or directly enter the new height & width you wish in the two fields near the "Custom" option. Generally cursors have a square format, but you can create a non-squared cursor by disabling the "Square format" option.

AniTuner displays the first frame once it has been resized, so you can preview the result of the operation.

When you press OK, all frames inside the animated cursor are automatically resized to the new height & width you chose.

Resizing Options:

You have three options for the resizing operation:

  • "center images": the frame background will be first resized to the new size and the old image will then be drawn as centered in the new frame. Recommended.
  • "resize images to fit the new size": this will resample the old image to fit the new frame. Background transparency may not be correctly resized.
  • "crop images": the frame background will be first resized to the new size and the old image will then be drawn at the top-left corner of the new frame.

In each case you might need to touch up all frames manually.


Change Color Format

You can modify the color format of the animated cursor. Click on "View cursor properties" in the Tools panel and click on the Change button.

The number of colors may be increased or decreased: use the radio buttons to select the new color format for the cursor frames.

AniTuner displays both the original first frame and the result of the color operation, so you can compare them.

When you press OK, all frames inside the animated cursor are automatically converted to the new color format.

About the options:

Add a semi-transparent XP shadow: this option is only available if you convert the animated cursor to the 32-bit format (24-bit + 8-bit for the alpha channel) supportig partial transparency. Animated cursors in this format are only handled by Windows 2000/XP, though AniTuner draws 32-bit cursors correctly even if you are running it under Windows 9x/ME/NT.

Example: we converted a 256-color cursor to a 32-bit cursor and enabled the "XP shadow" option:

8-bit:
32-bit:

Did you note the small gray shadow? This can be done thanks to the alpha channel available with 32-bit animated cursors.

Try to keep background transparency (advanced users):

In case of a color reduction, the transparent color may be changed too and some pixels that were previously considered as transparent may become non-transparent after the reduction. If you enable the "Keep background transparency" option, AniTuner will then replace the color of all transparent pixels with the new transparent one, and the problem should be solved.

When decreasing colors, you will generally lose quality although AniTuner tries to find the best colors that suit each frame. Decreasing colors is not recommended as you will probably have to touch up all frames manually to get a better result.


Editing Frames

AniTuner is able to add, modify, move and delete frames of animated cursors. Click on "Edit Frames" in the Tools panel once an animated cursor is loaded.

All frames of the animated cursor are displayed in this list (in the order of their appearance). AniTuner also indicates the timing for each frame (length of the keyframe) in jiffies (1/60th of a second).

Use the links at the bottom to perform operations on frames. Some operations such as Move, Edit... require first that you select a frame in the list.

  • Add frame: opens the "Add frames" dialog to add one or more frames to the animated cursor.
    You can add:
    • 1 or more blank frames. AniTuner creates an empty bitmap and saves it to the animated cursor as a new frame. For 32-bit animated cursors, a blank alpha channel is automatically generated too. You can then import images or paste new ones using the "Edit frame" command.
    • copy one frame X times. If you want to copy a particular frame, select it in the list and then enter the number of copies you want to add.
    • add from the clipboard: if the clipboard contains a valid bitmap, this option is enabled. You can create a new frame from the clipboard. The option "Include alpha channel when pasting" should be disabled if the clipboard does not contain a bitmap previously copied by AniTuner itself to the clipboard.
  • Remove frame: removes the selected frame from the animated cursor.
  • Edit frame: opens the "Edit frame" dialog to let you edit the selected frame. You can also double-click on the frame you wish in order to edit it.

    The behavior of the "Edit frame" dialog is described here.

  • Import image(s): lets you import one or more existing image files and transform them into animated cursor new frames. Further description available here.
  • Export frame: exports the selected frame as an image file. Supported formats include: Bitmap BMP, JPEG, PNG, GIF, Adobe Photoshop PSD, cursor CUR and icon ICO. Further description available here.
  • Merge with: you can import all frames of an existing animated cursor and add them to the current one. This operation is restrictive because both animated cursors must have the same color format & size. If you want to import a frame from an animated cursor, you can then also use Import image(s) as described above.
  • Move Up: moves the selected frame up and the previous one down.
  • Move Down: moves the selected frame down and the next one up.
  • Drag/drop: to move a frame to another position in the list, you can use drag/drop operations: click on the frame you wish to move and drag it onto another frame. The latter will be moved to the old location of the dragged frame.

Note that changes cannot be undone. Be sure to save your animated cursor regularly using "Save animated cursor".


Edit Frame Dialog

This dialog is opened when you double-click on a frame or click on the "Edit frame" link in the "Edit cursor frames" page.

The "Edit selected frame" dialog contains a lot of options; each one is explained below.

» First of all be sure to read this topic: What is an animated cursor?
We explain the role of the color & mask bitmaps to generate transparency for animated cursors.
  • Frame Timing: indicates the timing of the selected frame in jiffies (1/60th of a second~16,6 ms). You can enter a new value in this field (must be greater or equal to 1).
  • Edit Image: AniTuner does not feature its own image editor, and therefore you need to use your own favorite image editor. Clicking on this button leads AniTuner to save the frame as a temporary bitmap (or PNG) file and then launch the image editor specified in the Program Options.
    1. Normally your image editor automatically opens the temporary bitmap file and you can then modify it.
    2. After that, save your changes back to the file and return to AniTuner.
    3. Answer Yes so that AniTuner opens the temporary bitmap file with changes and changes the frame. The temporary bitmap file is then deleted.
  • Copy: this will copy the frame to the clipboard, you can then paste it in an image editor.
  • Paste: if the clipboard contains bitmap compatible data, the frame image will be replaced by the bitmap from the clipboard.
  • Refresh: refreshes the current preview.
  • Import: this lets you import an existing image file and replace the frame image with it. More information available here.
  • Export: this will export the selected frame to an external image file. More information available here.

Transparent Color: the transparent color is used to represent the regions that appear as transparent in the animated cursor. When creating the animated cursor's frames, AniTuner generates a mask and uses this transparent color to determine the parts of the image that need to be masked (i.e. transparent).

Special description for 32-bit cursors:

Animated cursors which are in 32-bit color format contain an alpha channel. The alpha channel works like a mask as it specifies how the pixel's colors should be merged with another pixel when the two are overlaid, one on top of the other.

AniTuner handles alpha channels completely and has special functions to support them. When you edit a frame of a 32-bit animated cursor, AniTuner can include the alpha channel bitmap juxtaposed with the color bitmap as you can see below:

So you can edit the alpha channel too in your image editor. To include the alpha channel, enable the "Include alpha channel when doing operations" option. In this case it will be included when you press "Edit Image", "Copy" or "Export". Otherwise the alpha channel will be destroyed and you will leave partial transparency information.


Importing Images

Since AniTuner does not feature its own image editor, it is able to import existing image files and transform them into animated cursor frames.

You can import images by clicking on "Import Image(s)" in the "Edit cursor frames" page or in the "Edit frame" dialog.

To make up for the lack of an image editor, AniTuner recognizes the following image formats:

  • Bitmap (.bmp).
  • JPEG (.jpg).
  • PNG (.png) including their alpha channel if any (see below).
  • GIF (.gif) - static or animated. Multiple images (frames).
  • Adobe Photoshop (.psd) (all layers are merged).
  • cursor (.cur) static Windows cursors. Multiple images.
  • icon (.ico). Multiple images.
  • animated cursor (.ani). Multiple images (frames).
  • Video for Windows (.avi). Multiple images (frames).

First select the image file you want to import and AniTuner then shows you the following dialog.
Note that if you select several image files, the "Import image" dialog will be displayed for each image.

  • If the imported image file contains several sub-images (this is the case for icons, cursors, AVI, animated GIF), you can select the frame to import using "View Frame" as shown on this screenshot.
  • If the imported image format supports transparency (like GIF, icons, cursors, Photoshop files), the background is filled with the transparent color (on this screenshot this is fuchsia).

All images do not generally fit the frame size of the animated cursor, so you need to indicate AniTuner which part of the image you want to import as the new frame.
Use the red rectangle and its eight boxes to select the part of the image, or directly enter the coordinates (Left-Top-Right-Bottom) in the four corresponding fields for the selection rectangle.

If the selection does not fit the current animated cursor size, AniTuner will prompt you for the resizing method it should use to correct this:

  • Resize image to fit the new size: this will resample the old image to fit the cursor frame.
  • Center image: the frame background will be first resized to the new size and the old image will then be drawn as centered in the new frame. Recommended.
  • Crop image: the frame background will be first resized to the new size and the old image will then be drawn at the top-left corner of the new frame.

Make your choice and press OK to continue.

A magnifying glass is available on the right: it shows a zoomed version of the pixels near your mouse pointer. This may be useful when you make the selection using the mouse.

About color format:

Imported images may not have the same color format as the animated cursor. In this case AniTuner always first converts the imported image to the animated cursor's color format before creating the frame. For instance, if your imported image is 24bpp (true colors) and your cursor is 8bpp only, AniTuner will perform a color reduction from 24-bit to 8-bit (a color reduction generally leads to a quality loss).

Image transparency:

The transparent color is used to represent the regions that appear as transparent in the animated cursor. When creating the animated cursor's frames, AniTuner generates a mask and uses this transparent color to determine the parts of the image that need to be masked (i.e. transparent).
You can visually select the color to set as transparent using the dropper tool: . Click on the pixel of the image you want its color to become the transparent one.

You may also set no transparent color for this image but this is not recommended as the frame will not be transparent at all (animated cursors should always have a transparent area). To set no transparency, uncheck "Set this color as transparent" option.

Special description for 32-bit cursors:

32-bit animated cursors contains an alpha channel which plays the role of the mask. It specifies how the pixel's colors should be merged with another pixel when the two are overlaid, one on top of the other.

If you import a picture that is not already in the 32-bit format, AniTuner creates a blank alpha channel that you can then modify using the tools in the "Edit frame" dialog. Otherwise for PNG, icon, cursor and Photoshop PSD, the alpha channel is recognized by AniTuner.
In this case the "Keep alpha channel" option will be enabled: leave it checked and the alpha channel will be imported too when creating the frame. Otherwise the alpha channel will be blank like for other image formats.


Exporting Images

AniTuner can export the selected animated cursor frame to an external image file.
Select a frame and click on "Export frame" in the "Edit cursor frames" page, or directly press "Export..." in the "Edit frame" dialog.

AniTuner has support for the following image formats:

  • Bitmap (.bmp)
  • JPEG (.jpg)
  • PNG (.png) including their alpha channel if any (see below).
  • GIF (.gif) - static or animated. Multiple images (frames).
  • Adobe Photoshop (.psd).
  • cursor (.cur) static Windows cursors. Multiple images.
  • icon (.ico). Multiple images.

You will be prompted to enter the filename for the exported image file. According to the file extension, AniTuner will save to the corresponding format (the default extension is .bmp so be sure to enter the full filename). For instance, type "my image.png" if you want to save the frame as a PNG file.

Image transparency:

Some image formats support transparency like cursor, icon, PNG, PSD and GIF. In this case, AniTuner will save color transparency too.

Special description for 32-bit cursors:

32-bit animated cursors contains an alpha channel which plays the role of the mask. It specifies how the pixel's colors should be merged with another pixel when the two are overlaid, one on top of the other.

Icon, cursor, PSD and PNG files have support for alpha channels. Consequently AniTuner can store alpha channel information within the image when creating the image file in one of these formats. If the selected format does not support alpha channels, the latter will still be rendered when drawing to the image.

PNG are useful for editing alpha channels if your image editor supports it (like Adobe® Photoshop or Microsoft® Photo Editor). For instance, you can export your 32-bit cursor to a PNG file, modify it in the image editor and then import changes back to AniTuner.


Saving & testing animated cursors

Once your animated cursor is ready to be saved, click on "Save animated cursor..." in the Tools panel and select the filename for your new animated cursor:

Note that until you click "Save animated cursor...", the animated cursor is not saved and is kept in memory. If you accidentally exit AniTuner, your changes will be lost.

Ensure that your cursors has a title and author name in the "View Cursor Properties" page. And do not forget to set the hotspot of your cursor!

You can then use your new cursor with Windows: why not customize the Windows mouse pointers?
The mouse applet in the Windows control panel lets you change the cursors used during different operations (wait, no selection, etc...). Select the "Pointers" tab in the mouse applet and then highlight the pointer you want to replace. Click the "Browse" button and finally select your new animated cursor:

If your .ani files are correctly associated, you can also preview your animate cursor using Windows Explorer: just hit the new animated cursor file and select the File Properties shell menu command. Windows will then display the live animated cursor on the Properties tab.

If you want to use animated cursors in Web pages (without converting them to GIF), insert the following HTML code between the <HEAD></HEAD> tags:

<style>
<!--
BODY{ cursor:url("mycur.ani"); }
-->
</style>

where "mycur.ani" should be replaced by the URL to the .ani file.

Minimum browsers: M icrosoft Internet Explorer 4+ and Netscape 6+

How to create cursor trails?

On this page you can see the great yellow dino [image] flying near your mouse pointer.

The third-party site anicursor.com contains several useful script samples; download the Zip archive containing the necessary Javascript source and sample files. Then extract the necessary files to a folder and open the HTML page in your HTML editor.


Hints about conversion

  • AniTuner will generally detect the most appropriate settings and transparent colors to be used. In most cases you do not need to change these settings. But do not hesitate to test new operations yourself or configure settings how you want: if the result does not satisfy you, you can still load the original copy again.
  • Always set the transparent color to a non-used color in your cursor's image. The transparent color is used by AniTuner to detect the parts of the image that should appear transparent in the animated cursor: when creating the frames, this color allows AniTuner to generate the mask bitmap; if your image contains parts that are in the transparent color, they will appear transparent too.
    Not good! Yellow already appears in the dino picture. Good. Teal never appears in the dino picture.
  • There is an exception: when creating 32-bit cursors, generally leave the transparent color to white. In fact, the alpha channel plays the role of the mask and the transparent color is not really used by AniTuner. Tests show that if the transparent color is set to white, the result has a better quality. Note that this is only an "empirical rule"...
  • When you edit 32-bit cursors, always enable the "Include alpha channel" option. Or a better solution: export & import PNG/PSD/CUR/ICO files. AniTuner can create & read these files that contain alpha channel (partial transparency). If you have an image editor that supports editing them (like Adobe® Photoshop or Microsoft® Photo Editor), you will be able to modify alpha channel too when doing operations.
  • 32-bit cursors are only supported under Windows XP/2000. On Windows 9X/NT/ME, they are not handled though AniTuner can still creates and displays them (with their alpha channel).
  • When importing an image, ensure that is has the same color format as the animated cursor. Otherwise in some cases AniTuner may perform color reductions (for instance from 24-bit to 8-bit or even 4-bit) and you may need to touch up the final result.


Export to another format

AniTuner can convert animated users so they can be used in Web pages, documents, manuals, Flash movies or applications. The following animation formats are supported: GIF, AVI or Flash recognized by Web browsers, viewers, animation player controls, etc...

Once your animated cursor is opened, click on "Export to another format" in the Tools panel.

Then select the format you want to export your animated cursor to using the following list:

AniTuner can export animated cursors to the five following formats:

  • Animated GIF: supports bit-transparency but limited to 256 colors (8-bit). When you convert an animated cursor to a GIF, if the number of colors is higher than 256, AniTuner will first apply a color reduction to all frames before converting them. Animated GIFs are useful for HTML pages, e-mails, help files, etc...
    Each frame can have its own delay like in animated cursors, so the animation timing can be kept when converting: in this case, leave the option "Each frame keeps its own timing" enabled. Otherwise select "Use the same timing for all frames" and enter the delay for all frames (in jiffies; 1 jiffy=1/60th of a second).

    Transparent color: defines the color considered as transparent for the GIF. Be sure to select a color that is not used in your animated cursor's images such as fuchsia or teal (in the color list).

    Do not make exported animation transparent: if you enable this option, the output GIF will not be transparent and the background will be filled with the transparent color. If you convert 32-bit animated cursors, you should use this option.
  • Macromedia Flash: AniTuner can convert your animated cursor into a compact Flash SWF movie. You can then use this Flash file in your other Flash projects (using Macromedia Flash® editor or any Flash editor tools), in your presentations or HTML compiled publications (built with HTML Executable), and on your Web pages (using the Flash player control).
    Flash files created with AniTuner support partial transparency (alpha channel), high color levels (24-bit & 32-bit) contrary to GIF and lossless compression.
    Each frame can have its own delay like in animated cursors, so the animation timing can be kept when converting to Flash: in this case, leave the option "Each frame keeps its own timing" enabled. Otherwise select "Use the same timing for all frames" and enter the delay for all frames (in jiffies; 1 jiffy=1/60th of a second).

    Transparent color: defines the color that will be used to fill in the background of the movie. Generally use white but it depends on where you want to use your Flash movie.

    Do not make exported animation transparent: only applies to 32-bit cursors. If you enable this option, AniTuner will convert the 32-bit images of your animated cursor to 24-bit ones and the alpha channel will be rendered using the transparent color defined above.
  • Video for Windows AVI: creates small silent AVI clips. You can use AVI files in your help files and applications: refer to the Win32 SDK help file, the "Animation Controls" help topics. Here is an extract: An animation control is a window that silently displays an Audio Video Interleaved (AVI) clip. An AVI clip is a series of bitmap frames like a movie. Although AVI clips can have sound, you cannot use such clips with animation controls. You can use only silent AVI clips.

    Transparency is not supported by AVI, therefore you have to select a background color (generally white but you can change this to fuchsia or teal if you plan to use your AVI with the animation control above that supports background transparency). High color levels are allowed contrary to GIF. AniTuner-created AVI clips are not compressed (you can still open them with an AVI editor such as VirtualDub).
    AVI only supports one delay for all frames (contrary to animated cursors): AniTuner will by default use the delay of the first frame. But you can also enter your own delay for all frames (in jiffies; 1 jiffy=1/60th of a second).
  • Single bitmap: this creates a single static bitmap containing all frames of the animated cursor (not a real animation). Each next frame is juxtaposed with the preceding one and this leads to this sample result:

    Frames may be juxtaposed horizontally or vertically. The resulting bitmap may be used with some animation controls; for instance, Borland® Delphi and C+ Builder programmers can use the Animation player control available in Delphi VCL Extensions (RX) Lib).
  • AniTuner disassembly: use this format if you want to modify the animated cursor and then import changes back to generate a modified cursor. AniTuner disassemblies contains a text file (.atd extension) and a series of PNG files. When you export an animated cursor as a disassembly, AniTuner exports all frames as PNG files (including the alpha channel for 32-bit cursors) and creates a file containing all necessary information to rebuild the cursor later.

    The disassembly .atd file and the PNG files are always created in the same destination folder.

    You can select the transparent color (background color) that indicates the transparent areas in PNG image files.

    » More information about AniTuner disassemblies

After you have selected the destination format for the animated cursor and set up the different related settings, press the Export button to choose the filename for the output animation file. Click OK and your animated cursor is converted.


Working with AniTuner disassemblies

If you want to edit several frames of an animated cursor, to create an entire cursor from scratch or to modify the structure of a cursor with a text editor, then you can export your animated cursor to an AniTuner disassembly file.

AniTuner disassemblies are made up of a text file (the disassembly file) that is given the .atd extension and a series of PNG image files that contain the frames of the animated cursor. When AniTuner exports a disassembly, it first saves all frames as PNG files and then creates the disassembly text file containing all relevant information that allows AniTuner to generate the animated cursor again when you load it.

PNG image files may be then edited with any image editor that supports the PNG format. AniTuner always creates 24-bit PNG files even if the original animated cursor has another format; in case of 32-bit animated cursors, the alpha channel is also embedded into the PNG image file (partial transparency) so it can be edited too.

For other formats than 32-bit, AniTuner will use the transparent color to determine transparent areas. You can select the transparent color when exporting the disassembly file.

When creating the animated cursor back from PNG image files, AniTuner will automatically convert images to the color format of the animated cursor if necessary. You do not need consequently to use 8-bit PNG files.

About AniTuner Disassembly format

If you want to edit the disassembly file manually (text format), open it with any text editor like Notepad. The disassembly has the same structure as the old Windows configuration .ini files. Here is a complete disassembly file:

[MainInfo]
Generator=AniTuner
Title=Open Folder
Author=No author
HotspotX=1
HotspotY=0
Height=32
Width=32
PixelFormat=2
FrameCount=4
TransparentColor=clFuchsia

[Frame0]
PNGFile=folder0.png
Length=20

[Frame1]
PNGFile=folder1.png
Length=8

[Frame2]
PNGFile=folder2.png
Length=8

[Frame3]
PNGFile=folder3.png
Length=8

Each disassembly features a [MainInfo] section that contains general settings about the animated cursor such as width, height, hotspot, color depth (pixel format), etc...
This section is followed by several frame sections that contain settings related to a given frame. There is as many frame sections as frames.

Description of the MainInfo section

The [MainInfo] section is followed by some properties in the following format:
Property=Value
All of the properties are required by AniTuner!

  • Generator: should always be "AniTuner". Leave it unchanged.
  • Title: the title of the animated cursor.
  • Author: the author of the animated cursor.
  • HotspotX: horizontal coordinate of the hotspot point. Integer.
  • HotspotY: vertical coordinate of the hotspot point. Integer.
  • Height: height of the animated cursor's images. Integer.
  • Width: width of the animated cursor's images. Integer.
  • PixelFormat: indicates the color format of the animated cursor.

    Possible values:

    • 0: pfDevice - not used.
    • 1: pf1bit: 1-bit (2 colors).
    • 2: pf4bit: 4-bit (16 colors).
    • 3: pf8bit: 8-bit (256 colors).
    • 4,5: pf15bit, pf16bit - not used.
    • 6: pf24bit: 24-bit (high colors).
    • 7: pf32bit: 32-bit (true colors - 24-bit with 8-bit alpha channel).

    For example, PixelFormat=2 indicates a 16-color animated cursor.

  • FrameCount: number of frames in the animated cursor. It must match the number of frame sections in the disassembly!
    Note that N given frames are indexed from 0 to N-1.
  • TransparentColor: Borland® Delphi/Borland C++ Builder color identifier (clWhite, clBlack, clFuchsia....) or the color specified in the hexadecimal format preceded by $, such as: $00F7F7F7.

Description of a frame section

A frame section must always be named "Frame" and immediately followed by the index of the frame such as [Frame0] or [Frame4].

It always contains two properties:

  • PNGFile: the filename of the PNG image file associated to the frame. Note that the PNG file must be in the same folder as the disassembly .atd file (AniTuner does not support absolute paths).
  • Length: indicates the length of the frame (in jiffies).

Creating an animated cursor from a disassembly

In AniTuner, select "Load new animation..." in the Tools panel or "Open an existing animation file" on the Welcome page. You will be prompted to select the .atd disassembly file. AniTuner will then read the disassembly and generate the new animated cursor. The animated cursor will be then opened and you can save it by clicking on "Save animated cursor..." in the Tools panel.


About GConvert

AniTuner is only dedicated to animated cursors. Our another product GConvert is designed to manipulate icons and icon related files.
You can both use GConvert and AniTuner together: the first to extract icons from files, the second to import these icons and change them into frames for animated cursors.

GConvert is a full-featured icon toolkit that everyone who likes icons should use: with it you can extract, view, create, edit, manage & convert icons without requiring any additional tool or knowledge.

Its basic purpose: GConvert extracts icons from files and displays them in a list: you then select the icon you want and it can converted to the format of your choice. GConvert reads any icon files such as executable, DLL, ICL, OCX, VBX, CPL, BPL, NIL, IL, SCR, CUR, ICNS, ZIP, RSRC files and allows you to save extracted icons as icon, bitmap, PNG and many other popular formats (JPG, GIF...) or even copy them to the Windows clipboard for direct use into your applications, documents, Web pages.

Moreover GConvert offers you more flexibility and functionality than other standard icon extractors: its powerful but easy-to-use features let you do almost everything you want with your icons:

  • extracts any icons including all of their images (any size and color depth, including 32-bit icons with alpha channels for Windows® XP) from any files containing icons. Then just select an icon in the main list in order to view all of its images in the Image Viewer instantly.
  • creates, opens, edits and manages icon libraries in ICL format (the standard icon library format). Add, rename, edit or remove icons from your icon libraries directly with GConvert. You can also compile them into true 32-bit DLL files (similar to the famous Windows' MORICONS.DLL file) or Zip archives.
  • exports selected icons to single icon files, bitmaps, PNG files and many other additional formats thanks to external plug-ins (JPEG, GIF...).
  • supports the 32-bit icon format for Windows XP with full alpha blending. GConvert draws XP icons correctly, saves them as they would appear under XP and can also keep the alpha channel when converting icons to PNG files & 32-bit BMP files.
  • includes a powerful icon editor which lets you add, edit, remove, resize and generate images for your icons. Create new icons by importing image files and turn them into icon images of any format (from monochrome to 32-bit icons with alpha channel).
  • searches for hidden icons on your computer and displays them in a list; you can also export the search results to icon libraries.
  • recognizes Macintosh® icons (from 16x16 to OS-X 128x128 thumbnail formats - from 1-bit to 32-bit with alpha channels) stored in ICNS and Macintosh resource fork files. You can then export, edit, convert these icons or even add them to icon libraries.
  • reads icons directly from Zip archives so if you download icon archives from the Internet, you do not need to unzip your icons first in order to use them. Zip archives may also be turned into ICL libraries.
  • displays icon properties and associated images (including mask, alpha channel bitmaps that you can copy to the clipboard).
  • provides you with batch options: you can save or convert several selected icons in one click (with optional image filtering).
  • exports icons to a folder or a Web page, or even as Windows cursors (.cur).
  • manages your icon favorites (including categories) and your favorite icon directories.
  • modifies existing icons in EXE/DLL files.
  • and much more.

With its intuitive interface, GConvert can be easily and quickly used without any problems: no complicate menus, buttons or dialogs. Each important command can be instantly accessed with the mouse or keystrokes.

http://www.gdgsoft.com/gconvert


Interesting Links

Here are some interesting Internet links where you can find some stuff related to animated cursors:
  • A big collection of animated cursors to be used with AniTuner:
    Contains about 2,000 regular and animated cursors and viewer for them. By Eldos organization.
    Highly recommended. You may download it at
    http://www.torry.net/docs/other/graphics/eldoscursors.zip
    If the link is dead, try a search with Google.
  • A site with some animated cursors to download and examples about how to use them in HTML pages:
    http://www.anicursor.com/moreani.html
  • The Google directory about cursors:
    http://directory.google.com/Top/Computers/Software/Desktop_Customization/Cursors/?tc=1
  • The Animated Cursors section on SimTel.net:
    http://www.simtel.net/category.php?id=51
  • The LoadCursorFromFile Win32 API is useful to load and use animated cursors in your applications.
  • "Using Animated Cursors in Visual Basic" article on developer.com at:
    http://www.developer.com/net/vb/article.php/1541491
  • "How to add animated cursor to your application" article (for MSVC++ 6 & 7) at:
    http://visualcpp.net/show.php?qID=41
  • "Add animated cursors to your programs" article (for Borland Delphi users) at:
    http://www.chami.com/tips/delphi/112196D.html
  • Do you wonder about a file format? Wotsit.org is worth the visit as this is the the complete programmer's resource on the net. You will also find specifications about the .ani format.
    http://www.wotsit.org
  • efg's Computer Lab: mostly Delphi Projects and reference library about Computer Graphics, Image Processing, Color Science, Fractals & Chaos, Mathematics, Science & Engineering. It is worth the visit too for Delphi programmers.
    http://homepages.borland.com/efg2lab/
  • ......

Like all Internet links, the following URLs may be broken one day. Use your favorite search engine to find the new URLs.


License Agreement

License Agreement of G.D.G. Software

IMPORTANT: You should read CAREFULLY:

Product: AniTuner ©

This license agreement is a legal agreement between you (either an individual or a single entity) and the G.D.G. Software team for the identified product, part of G.D.G. Software ©, which includes computer software and associated media, and may include printed materials and online or electronic documentation. By installing, copying, distributing or otherwise using this product, you agree to be bound by the terms of this license agreement. The use of this product indicates your understanding and acceptance of the following terms and conditions. This license shall supersede any verbal, or prior verbal or written, statement or agreement to the contrary.

This product and/or related documentation are provided on an "as is" basis, without any representation or warranty of any kind, either express or implied, including without limitation any representations or endorsements regarding the use of, the results of, or performance of the product, its appropriateness, accuracy, reliability, or correctness. The entire risk as to the use of this product is assumed by the user and/or licensee. The G.D.G. Software team does not assume liability for the use, installation and distribution of this product. In no event will the G.D.G. Software team be liable for additional direct or indirect damages including any lost profits, lost savings, loss of business information, any other pecuniary loss or other incidental or consequential damages arising from any defects out of the use of or inability to use this product, even if the G.D.G. Software team has been advised of the possibility of such damages.

Limitations on Reverse Engineering, Decompilation, and Disassembly; you may not reverse engineer, decompile, or disassemble the product.

Restrictions on Alteration; you may not rename, edit or create any derivative works from the product, other than sub setting when embedding them in documents without the agreement of the author. You may not attempt to unlock or bypass any copy protection or authentication algorithm utilized by the product. You may not remove, modify or alter any copyright notice or the method by which it may be invoked, from any part of the product, including but not limited to any such notices contained in the physical and/or electronic media or documentation, in the Product's dialog or 'about' boxes, in any of the runtime resources and/or in any web-presence or web-enabled notices, code or other embodiments originally contained in or dynamically or otherwise created by the product.

The product (in whole or in part, including all files, data, and documentation, from here on referred to as "Product") is © Copyright Guillaume Di Giusto 1996-2004, all rights reserved, and are protected by French and United States copyright laws, international treaties as well as other intellectual property laws and treaties and all other applicable national or international laws. This agreement provides you only with a limited use license, and no ownership of any intellectual property.

The sole owner of G.D.G. Software is Mr Guillaume Di Giusto. Mr Guillaume Di Giusto reserves all other rights and restrictions not specifically granted in this license.

If the product includes a registered edition - the product becomes a registered edition when you have purchased and received a license (key, notice and/or full version) from the G.D.G. Software team that unlocks (or installs) additional functionality of the product only available in the registered edition -, the three following paragraphs then apply:

(a) If the product includes different editions: you may use the free edition of the product (if any is available) free of charge for your own personal use. Otherwise, you have to purchase the registered version as described in the shipped registration documentation. You may freely distribute the trial version of the product, provided that all files are included and remain unmodified and that no extra files have been added to the original installation package. You may not ask any money for the distribution except for additional shipping costs.

(b) You have the non-exclusive right to use the registered edition of the product only by a single person, on a single computer at a time. You must be registered with the G.D.G. Software team as an authorized licensee. If the product permits, you may physically transfer the product from one computer to another, provided that only a single person, on a single computer at a time, uses the product. In-group projects where multiple persons will use the product, you must purchase an individual license for each member of the group. Use over a local area network (within the same locale) is permitted provided that only a single person, on a single computer at a time, uses the product. Use over a wide area network (outside the same locale) is strictly prohibited under any and all circumstances. Without advertising, the G.D.G. Software team has all rights to terminate the services included in the product including but not limited technical support, upgrades, sales and other activities related to the product.

(c) You may not copy, modify, translate, share, or transfer the registered edition of the product or any copy except as expressly defined in this agreement. You may make one copy of the registered edition of the software part of the product solely for back-up purposes, as prescribed by French, United States, and international copyright laws. You must reproduce and include the copyright notice on the back-up copy. You may transfer the product to another party only if the other party agrees to the terms and conditions of this agreement and completes and returns registration information (name, address, etc.), to the G.D.G. Software team within 30 days of the transfer. If you transfer the product you must at the same time transfer the documentation and back-up copy, or transfer the documentation and destroy the back-up copy. You may not retain any portion of the product, in any form, under any circumstance.

If the product includes distributable run-time files, compiled code or components, then the following paragraph applies:

The G.D.G. Software team grants you a non-exclusive royalty-free right to compile, reproduce, and distribute any new software programs created using the product and/or G.D.G. Software provided that you: (a) distribute the components only in compiled executable programs or run-time files with executable programs; (b) do not use any part of the source code of the components to build any other components for public distribution or commercial sale; and (c) do not use any of the components as an object-oriented ancestor to build any other components (through inheritance) for public distribution or commercial sale. You will remain solely responsible to anyone receiving your programs for support, service, upgrades, or technical or other assistance, and such recipients will have no right to contact the G.D.G. Software team for such services or assistance. In order to distribute run-time, compiled code or components in accordance to this license, you must be registered with the G.D.G. Software team as an authorized licensee, and must agree to be bound by the terms and conditions of this License Agreement. You may not reproduce or distribute copies of the complete or partial package, any source, interface, or code units, any of the documentation, nor may you supply any means by which your users could create, modify, or incorporate any part of this product in their own products. You may not use the product's and/or G.D.G. Software's name, logo, or trademarks to market your programs, except to state that your program was created, written, packaged or distributed using the components or the product.

You agree to defend, indemnify and hold the G.D.G. Software team harmless from and against any and all claims, losses, liability costs and expenses (including but not limited to attorneys' fees) arising from your violation of this agreement or any third-party's rights, including but not limited to infringement of any copyright, violation of any proprietary right and invasion of any privacy rights. This obligation will survive any termination of this agreement.

If you do not understand or accept these terms, or your local regulations prohibit license agreements or limited disclaimers, you must cease and desist using G.D.G. Software immediately. Copyright laws supersede all local regulations. Violations of this agreement may be prosecuted to the maximum extent possible under the law.

When you accept and approve this license, it is considered that you have read it and you will respect it.


Contact Information

For the latest version of AniTuner and other G.D.G. Software products, you can visit our Web home page at:

http://www.gdgsoft.com

If you have questions, bugs to report, feedback regarding AniTuner, you can contact us by E-Mail:

anituner@gdgsoft.com

or better post your questions to our forums (so other users may also benefit from the answers):

http://www.gdgsoft.com/forum

Please indicate your full name, a valid E-Mail address, the version of AniTuner (and your computer configuration if this is a bug report).

AniTuner (and all related applications/documentation) is copyright © Guillaume Di Giusto 2003-2004. All Rights Reserved.