What is this? ============= Xcftools is a set of fast command-line tools for extracting information from the Gimp's native file format XCF. The tools are designed to allow efficient use of layered XCF files as sources in a build system that use 'make' and similar tools to manage automatic processing of the graphics. These tools work independently of the Gimp engine and do not require the Gimp to even be installed. xcf2pnm converts XCF files to ppm, pgm or pbm format, flattening layers if necessary. If the image contains transparency, an alpha map can be written to a separate file, or a background color can be specified on the command line. xcf2png converts XCF files to PNG format, flattening layers if necessary. Transparency information can be kept in the image, or a background color can be specified on the command line. xcfinfo lists information about layers in an XCF file. The tools can either flatten an XCF file as given, or extract specific layers named on the command line. Portability =========== The software was developed on an Intel-based PC running Debian GNU/Linux. It ought to work on other Linux variants also. I would not be surprised if it ran on other unix systems too, but porting to non-unix platforms will require some work. Most of the code attempts to be prepared for porting, but this has not been explicitly tested. Installation ============ You need GNU make, a C compiler, and perl. After the source archive is extracted, the command sequence ./configure make all make install should compile the tools and install them in /usr/local. The 'configure' script is generated by GNU autoconf, and accepts the arguments that such scripts commonly do. You can use ./configure --enable-precomputed-scaletable to precompute lookup tables for pixel composing at compile time. Normally these tables are initialized at run time if a layer that needs them is detected. Precomputing them may improve performance by a few percent, at the cost of doubling the size of each binary. License ======= Xcftools is written by Henning Makholm <henning@makholm.net> It is hereby in the public domain. In jurisdictions that do not recognise grants of copyright to the public domain: I, the author and (presumably, in those jurisdictions) copyright holder, hereby permit anyone to distribute and use this code, in source code or binary form, with or without modifications. This permission is world-wide and irrevocable. Of course, I will not be liable for any errors or shortcomings in the code, since I give it away without asking any compenstations. If you use or distribute this code, I would appreciate receiving credit for writing it, in whichever way you find proper and customary.