fly: contributors and release notes

Table of Contents

  1. Contributors.
  2. Release notes.


Claus Hofmann <> - see release notes for v0.95b.

John Bowe <> - better Makefile, argument parsing, quiet mode, comment lines, and other suggestions.

Jean-Louis Damez <> - Compilation of the Windows NT/95 version.

Laurent Domisse <> - Compilation of the RPC-SA version and hosting the European mirror.

Tam Siu Lung <> - see release notes for v1.5.0.

Jukka Manner <> - Code improvements and bug fixes - see release notes for v1.5.0.

Alex Ibrado <> - Compilation of the BSDI version and hosting the US mirror.

Eric Turenne <> - Compilation of the Solaris 2.5.1 version.

Peter Fosseus <> - Compilation of the SCO version.

John Mitchell <> - Bug fix for get_image routine.

Henrik S. Christensen <> - Bug fix for argument type to gdImageString and gdImageStringUp;

Igor Bilyi <> - Compilation of the OS/2 version.

Ariel Faigon <> - Makefile correction.

Shoji Mori <> - Fix for Win32 binmode problem.

Geraint Edwards <> - Compilation of the FreeBSD version.

Anatoly A. Orehovsky <> - Bug fix for garbage input file or empty input file.

Daniel Alabaster <> - Compilation of the OS/2 Warp version.

roro (K. Akiyama) <> - Japanese translation of the documentation and Japanese mirror site.

Release notes

Version: 2.0.1 17th June 2009

Fly tested for compatibility with gd version 2.0.35. Makefile updated for correct/new reference to freetype library. Has been tested on Linux/x86.

Version: 2.0.0 25th November 2001

Fly now uses gd version 1.8.4, providing support for PNG and JPEG images. GIF support is still available if you use Philip Warner's patched version of gd 1.8.4. Please note: depending on where you live, this may infringe patents.

I will no longer be able to compile a large range of binaries for fly. I no longer have direct access to the range of platforms I once did and more importantly, I have two young children who (gladly) consume most of my spare time.

Version: 1.6.5 15th January 1999

Bug fix. Seg fault on garbage input file or empty input file. Thanks to Anatoly A. Orehovsky <> for the report and code fix.

Version: 1.6.4 24th November 1998

Minor bug fixes. Removing warnings and fixing minor errors in some print statements. Thanks to Bernie Kirby <> for reporting the warnings.

Version: 1.6.3 22nd October 1998

Minor additional feature: any pair of diametrically opposite vertices in any order will now be accepted for rect and frect.

Version: 1.6.2 25th September 1998

Minor bug fix - some return codes in case of fatal errors were 0 when they should have been 1.
Addition of code for win32 binmode problem. (thanks to Shoji Mori <>)

Version: 1.6.1 9th June 1998

Minor bug fixes - get_image routine (thanks to John Mitchell <>) and argument type to gdImageString and gdImageStringUp (thanks to Henrik S. Christensen <>)

Version: 1.6.0 25th March 1998

New Commands:
ellipse - draw an ellipse, specifying origin, width and height.
colourchange - change a colour in the GIF to another colour.
rotate - rotate the GIF 90, 180 or 270 degrees.

Change: Now uses GD version 1.3. This fixes the long-standing filled polygon bug. GD 1.3 also includes a change to the method of GIF encoding (from LZW to Run Length Encoding) to avoid copyright problems with the LZW algorithm. The effect of this is that images produced by fly will be larger than they used to be. GD 1.3 also includes a number of other changes that won't affect fly users.

Version: 1.5.4 3rd February 1998

Bug fix: Wouldn't terminate if there was an 'end' directive at the very end of the input file (i.e. not followed by a 'new' or 'existing' directive). Thanks to Harold Kloosterhof <> and Chris (PGP key ID 0xC0DED00D) for reporting this bug.

Bug fix: The 'copy' and 'copyresized' bug fix of version 1.5.0 had caused another bug - 'copy' was leaving a one-pixel-wide line along the left and bottom edges of the destination region.

Bug fix: Fly would hang if there was one space after a 'new' directive. Thanks to Mark Heath <> for reporting this bug.

Version: 1.5.3 17th December 1997

Bug fix: Problems with string commands on some platforms. Thanks to Rende Luitjes <> for reporting this bug.

Minor code changes: move some #defines to beginning of lines, some pointer naming changes, moving code to make verbose output more meaningful for string directives. Thanks to Rende Luitjes <> for suggesting the changes.

Version: 1.5.2 16th December 1997

Bug fix: a line of code had gone MIA! Only affected the copy and copyresized functions.

Version: 1.5.1 15th December 1997

Removed modification of opening stdout in binary mode as it didn't work on most operating systems.

Version: 1.5.0 9th December 1997

New Feature:
With the copy and copyresized directives, you can now use the output of a command instead of a filename to import a GIF. For example:
copy 10,20,-1,-1,-1,-1,`ppmtogif image.ppm`
This feature kindly provided by Ian Reid <>

Modification: Open stdout in explicit binary mode when writing gif to stdout (for Windows NT/95 which stupidly defaults to ascii for stdout). Thanks to Andrew Rivett <>

Bug fix: when using copy and copyresized, area would be one pixel short on right and bottom sides if not using the -1,-1,-1,-1 coordinates. Thanks to Tam Siu Lung <> for reporting this bug.

Bug fix: was erroneously allowing filltoborder to be used with settile. Thanks to Jukka Manner <> for reporting this bug.

Version: 1.4.2 26th June 1997

Bug fix: error when using copyresized with -1,-1,-1,-1 coordinates.

Version: 1.4.1 29th January 1997

Bug fix: fixed fatal error on Solaris when sending output to stdout.

Version: 1.4 23rd January 1997

- Multiple GIFs from the one command file - use the new end command
- New commands: getpixel returns the colour index of a pixel; square and fsquare draw a square or filled square; fcircle draws a filled circle;
- Some extra examples in the file examples/

Version: 1.3.1 13th February 1996

- verbose output now goes to stderr rather than stdout only when gif output goes to stdout.
Bug fix: fly -h wouldn't work due to uninitialised filehandle.

Version: 1.3 23rd January 1996

Addition of comment lines and bug fixes, both contributed by John Bowe <>:
- verbose output now goes to stderr rather than stdout.
- bad first line caused core dump.

Version: 1.2 22nd January 1996

Addition of circle directive, and more examples (incl. CGI).

Version: 1.1.3 4th January 1996

Bug fix: first string directive interpreted as stringup directive on some platforms.

Version: 1.1.2 2nd January 1996

Various bug fixes for platform-specific peculiarities (BSDI, SunOS, HP/UX).

Version: 1.1.1 21st December 1995

Bugfix for quiet mode: copy and copyresized were talking when they shouldn't.

Version: 1.1 19th December 1995

  • New command line options:
    fly [-h] [-q] [-i inputfile] [-o outputfile]
    if inputfile and/or outputfile omitted, directives and output go to stdin and/or stdout.
  • New directives: stringup, setstyle, settile, fpoly.
  • Better argument parsing and quiet mode, thanks to John Bowe.

Version: 1.0 24th November 1995

Release version, including support for 5 font sizes in string.

Version: 0.99b 20th November 1995

Better Makefile (thanks to John Bowe), takes into account if you already have gd installed.

Version: 0.98b 8th November 1995

Changed a calloc to a malloc due to BSDI problem.

Version: 0.97b 5th November 1995

Miscellaneous bug fixes.

Version: 0.96b 1st November 1995

Fixed major bug in polygon code.

Version: 0.95b 18th October 1995

Additions contributed by Claus Hofmann <>

  • addition of transparent directive.
  • addition of code to check if colour already allocated before allocating it.
  • addition of feature to copy whole image if all coords are -1

Version: 0.94b 11th October 1995

1. Added support for gdImageSX, gdImageSY. 2. Added support for gdSetBrush.

Version: 0.93b 10th October 1995

Added support for gdCopyResized, for copying and scaling.

Version: 0.92b 6th October 1995

1. Added support for gdImageString, to enable writing of strings, in small or large fonts, onto GIFs created by fly.
2. Changed write out command to support OS/2
Thanks to Andreas Rudolf <>

Version: 0.91b 16th August 1995

Fixed problem reading from stdin
Thanks to Nick Kennedy <>

Version: 0.9b 12 August 1995

First public release.

[Valid XHTML 1.0!]