Re: ANN: TIFFRenderer for FOP
In future product announcements I would invite you to also make the announcement on the XSL-FO list on YahooGroups.com.
Further information is located at http://www.yahoogroups.com/group/XSL-FO
To subscribe send an email to XSL-FOemail@example.com
On this occasion I am copying your post to the XSL-FO list. On future occasions please feel free to post XSL-FO related announcements there. And, of course, you would be welcome to join in discussions there too.
In a message dated 12/05/02 10:14:44 GMT Daylight Time, olegt@... writes:
For the people interested in faxing using xsl-fo and FOP I'm happy to announce
TIFFRenderer for FOP. The homepage is at
http://www.tkachenko.com/fop/tiffrenderer.html and here is some info:
TIFFRenderer for FOP, version 0.9
TIFFRenderer is a small Java library extending Apache's FOP by providing
possibility to output multi-page TIFF (Tagged Image File Format) images. [TIFF
is one of the most popular and flexible of the current public domain raster
file formats, which was primarily designed for raster data interchange and is
standard format in faxing applications.] TIFFRenderer is not a real renderer
on its own, it just extends org.apache.fop.render.awt.AWTRenderer class and
encodes generated by that renderer AWT images to TIFF format. To actual
encoding TIFFRenderer uses slightly modified free of charge open source TIFF
codec  by Sun Microsystems, Inc. (Actually, a very similar TIFF codec is
included in Batik distribution, but unfortunately it has very limited support
for TIFF compression methods). TIFFRenderer has no dependencies on JAI, JIMI
or other image processing libraries.
For demonstration of using TIFFRenderer in a web application see TIFFRenderer
* Supported TIFF compression methods:
o Raw uncompressed data
o Byte-oriented run-length encoding "PackBits" compression
o Modified Huffman Compression (CCITT Group 3 1D facsimile compression)
o CCITT T.4 bilevel compression (CCITT Group 3 2D facsimile compression)
o CCITT T.6 bilevel compression (CCITT Group 4 facsimile compression)
o JPEG-in-TIFF compression
o DEFLATE lossless compression (also known as "Zip-in-TIFF")
* Ability to add extra images before/after those generated by FOP.
Not sure yet. Tested with FOP 0.20.3 under Sun JRE 1.3.1, 1.4. Definitely
doesn't work under IBM JDK1.2.2 (WebShere 3.5) because of some bug in AWT
Download and Installation
* Compiled version: tifferenderer-0.9.jar (140 Kb) .
* Sources: tifferenderer-0.9-src.jar (180 Kb) .
Just put tiffrenderer-0.9.jar into the CLASSPATH.
Testing: run TIFFRendererTest class with two arguments - xsl-fo file and tiff
file to be generated (having fop related jars and tiffrenderer-0.9.jar in the
java com.multiconn.fop.TIFFRendererTest table.fo table.tif
See TIFFRenderer Javadoc .
Main pattern of using TIFFRenderer is a very primitive one:
//Creates TIFFRenderer instance
TIFFRenderer tiffRenderer = TIFFRendererFactory.newTIFFRenderer();
//Creates render/encode params collection
TIFFRendererParams params = new TIFFRendererParams();
//Sets up params
//Sets params to the renderer
//Sets renderer to the FOP driver
See also TIFFRendererDemo servlet source  as example of using TIFFRenderer
in a servlet.
TIFFRenderer is subject to the Mozilla Public License Version 1.0 and is
distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
or implied. Original TIFF codec source code licence by Sun Microsystems, Inc.:
To be done
* Diminish library size by eliminating duplicate classes, which are
already in Batik jar.
Any comments and suggestions would be greatly appreciated, feel free to
contact me: <olegt@...>.
Multiconn International, Israel