[123] in linux-announce channel archive

home help back first fref pref prev next nref lref last post

IX lib for Linux

daemon@ATHENA.MIT.EDU (Lars Wirzenius)
Wed Jan 25 14:56:28 1995

Date: Wed, 25 Jan 1995 15:45:30 +0200
From: Lars Wirzenius <wirzeniu@cc.helsinki.fi>
To: linux-activists@niksula.hut.fi, linux-announce@vger.rutgers.edu

X-Mn-Key: announce

From: pm@radawana.cg.tuwien.ac.at (Manfred Petz)
Subject: IX lib for Linux
Newsgroups: comp.os.linux.announce
Keywords: graphics, images, conversion, library
Organization: ?
Approved: linux-announce@tc.cornell.edu (Lars Wirzenius)
Followup-to: comp.os.linux.misc

IX - The portable image conversion package
==========================================



***IMPORTANT***
---------------

Currently IX is in pre-pre-Alpha (if you know what I mean ;)
If you ftp it and discover any probs, please mail me. Any suggestions
are welcome. A couple of *important* things are not yet implemented. I 
thought long about whether to upload this first release and finally decided 
to do it - please don't expect too much for this 1st version and don't
flame me if you discover many bugs (email me instead :).

To execute the Linux-binaries, you need libc-4.6 or later! If you have
an older version of libc, take the source-code and compile it on your
system.



What is IX?
-----------

IX is a library plus standalone programs used for image-conversions. IX is
completely free (binary and source).



Availability
------------

Source+binaries can be found on ftp site radawana.cg.tuwien.ac.at in 
directory /pub2/ix. 
Subdirectory ./src       contains the source code; 
             ./bin       contains the binaries for Linux.
             ./slackware contains Slackware Linux compatible packages.
                         If you've got Slackware Linux or something 
                         compatible with pkgtool(8) - take these.



Portability
-----------

This software is (or should be) easily portable to other operating systems.
I can give direct support for Linux only since this is the only Unix I have 
continuous access to.

I made some generic tests and it seems to work (at least it did work) on the 
following platforms:

	HP730     (HP/UX SysV 4.0)
	RM600     (Sinix SysV 4.2)
	PC        (Onsite Unix SysV 4.2)
	DEC-Alpha (OSF/1, BSD I guess)
	Linux...of course :)

It should also work on the following ones but it's long ago since I tested it.
Thus, it might not even compile without some patches:

	MS-DOS
	IBM OS/2
	SCO Xenix



Whats special about it?
-----------------------

  - Full source code available.

  - A high degree of portability.

  - Minimal memory requirements. IX needs only a couple of KBs to convert
    images with a size of up to 2Gigabytes. And it can handle such huge 
    images also on platforms with memory constraints such as MS-DOS.

  - API. IX provides a really simple and flexible API. 

  - About 250KB man-pages.

  - Due to it's concept it allows to convert ANY implemented image format
    to ANY other implemented image format.

  - It includes:
      A couple of standalone programs used for image conversion
      A couple of tools programs which can scale/flip/merge images and
      output information about image-files.



What formats does it handle?
----------------------------

Currently IX can read and write:

  TIFF           (partial but quite comprehensive implementation - I work on it)
  Targa          (partial implementation - working on it)
  Sun Rasterfile (full implementation)
  PBM/PGM/PPM    (full implementation)
  RAW image data (full implementation)
  IXF            (full implementation, this is the IX image file format)

Currently I'm working on fixing known bugs (see below) and implementing the
PCX file format.

Please note that only *one* person is working on IX. One person which can 
work on it just a couple of hours a week. So, patches may take some time...



Known bugs
----------

  - For the PCX conversion there's only the skeleton code included. So don't
    expect to read or write PCX files.

  - Bilevel TIFF, TIFF LZW and TIFF Huffman compression is missing (yes, it
    hurts... but I work on it).

  - Planar organized TIFF files are handled incorrectly.

  - Binary coded PBM (one bit per pixel images) is read and written 
    wrong if sizex%8 != 0 (I know how to fix it). ASCII coded PBM works.

  - Targa RLE compression is missing. So is LZW. But where the hell can I
    find doc about Targa-LZW??? Please mail if you know.

  - Possible memory leakages. I didn't check for this currently. This has
    only effect if you use the IX API.


Comments&suggestions are welcome.

--
Send submissions for comp.os.linux.announce to: linux-announce@news.ornl.gov
PLEASE remember Keywords: and a short description of the software.


home help back first fref pref prev next nref lref last post