Dynamic Encoding of DjVu Files in JRAPublish
by James Rile, PlanetDjVu
September 16, 2002
JRAPublish introduces a new method of dynamic encoding for DjVu files. Previous DjVu encoding products require that a single encoding method be selected for an entire multipage document. This is OK as long as all pages share the same bit-depth (color, grayscale, bitonal) and resolution (600 dpi, 300 dpi etc.). It is problematic when the pages of a document differ in format.
Let's take as an example a book that has an illustrated cover, and is comprised of text pages except for a set of black and white photographs in the center pages, and some charts with very small text at the back. The covers are best scanned as color JPEG or color TIFF images. The text pages can be nicely represented by 400 dpi bitonal scanned TIFF files. The photo pages can be represented by grayscale scans. The charts at the back are best represented by 600 dpi bitonal images.
JRAPublish features a Default Profile for DjVu Encoding that treats each page of a document separately. A page images is first opened and the bit-depth and resolution is determined. Then the best encoding method is selected. In the example given, the covers will be segmented with the Scan300 profile, the text pages will be encoded with the Bitonal300 profile, the photo pages will be segmented with the Scan300 profile and the charts will be encoded with the Bitonal600 profile.
The result of this method of automatically selecting the best encoding profile for each page is that the overall document or book is automatically optimized for both file size and presentation quality.
Dynamic encoding and the Default Profile will work in most, but not all cases. For some publications you may want to create custom segmentation profiles of your own, and this you can do with the Profile Editor of JRAPublish. If you apply custom segmentation profiles to sets of page files, you can "stitch" them together into a complete volume using the JRAConvert utility that ships with JRAPublish.
The Default Profile Highlighted in JRAPublish, providing DYNAMIC ENCODING