About Ilib
What is it?
Ilib is a library (and some tools and examples) written in C
that can read, create, manipulate and save images. It is capable
of using X11 BDF fonts for drawing text.
(X11 BDF fonts are part of the UNIX-based X11 Windows System,
original developed at MIT in the early 1990s.)
That means you get
lots (208, to be exact) of fonts to use. You can even create your
own if you know how to create an X11 BDF font. It can read and
write PPM, XPM, GIF, PNG and JPG image format.
There is a Perl module included with the distribution. It does
not yet support the complete Ilib API, but it's a start.
|
For more information on X11 (aka "XWindows"), go
to XFree86.org,
maintainers of the open source x86-based version.
|
What can I use it for?
It's great for generating graphs and creating GIF output from CGIs.
There are also some useful applications bundled with it. For
example, there's a tool for generating index images (aka "thumbnails").
See the Screenshots to
see what the output looks like.
What platforms does it run on?
It is portable
enough to work with the old K&R C compilers and it will compile
under ANSI C. It has been compiled and run on both UNIX and
Windows 95/98/2000/NT/XP (MS Visual C++ and win32 gcc).
What image formats does it support?
| Format | Read | Write |
| PAM | Yes | Yes |
| PPM (raw) | Yes | Yes |
| PPM (ascii) | No | Yes |
| PGM (raw) | Yes | Yes |
| BMP | Yes | No |
| XPM | Yes | Yes |
| GIF87 | Yes1 | Yes1 |
| GIF89a | Yes1 | Yes1 |
| PNG | Yes2 | Yes2 |
| JPEG | Yes3 | Yes3 |
1With optional Giflib/Libungif
2With optional libpng (does not support writing colormapped images)
3With optional libjpeg
|
It natively supports PGM, PPM, PAM and XPM.
With optional external libraries it supports other formats as outlined
to the right.
Who can use it?
Anyone. Just follow the guidelines of the
GNU General Public License.
Is it hard to use?
It's fairly simple to use. Here's a simple program to
fill a rectangle, draw some lines and then some text:
sample.c.
The API is available online.
What's the latest version?
Version 1.1.9 was released on 25 Oct 2004.
|