DjVmDir.h

Implements DjVu multipage document directory

o class ByteStreamclass DjVmDir: public GPEnabled
Implements DjVu multipage document directory.
Files "DjVmDir.h" and "DjVmDir.cpp" implement class DjVmDir for representing the directory of a DjVu multipage document.

Bundled vs. Indirect format --- There are currently two multipage DjVu formats supported: bundled and indirect. In the first format all component files composing a given document are packaged (or bundled) into one file, in the second one every page and component is stored in a separate file and there is one more file, which contains the list of all others.

Multipage DjVu format --- Multipage DjVu documents follow the EA IFF85 format (cf. IFFByteStream.h.) A document is composed of a "FORM:DJVM" whose first chunk is a "DIRM" chunk containing the document directory. This directory lists all component files composing the given document, helps to access every component file and identify the pages of the document.

Most of the component files represent pages of a document. Some files however represent data shared by several pages. The pages refer to these supporting files by means of an inclusion chunk ("INCL" chunks) identifying the supporting file.

Document Directory --- Every directory record describes a component file. Each component file is identified by a small string named the identifier (ID). Each component file also contains a file name and a title. The format of the "DIRM" chunk is described in section Format of the DIRM chunk..

Theoretically, IDs are used to uniquely identify each component file in "INCL" chunks, names are used to compose the the URLs of the component files in an indirect multipage DjVu file, and titles are cosmetic names possibly displayed when viewing a page of a document. There are however many problems with this scheme, and we strongly suggest, with the current implementation to always make the file ID, the file name and the file title identical.

Author:
Andrei Erofeev <eaf@geocities.com>
Version:
$Id: DjVmDir.h.html,v 1.12 2001/02/15 01:12:21 bcr Exp $

Alphabetic index Hierarchy of classes


DjVu is a trademark of LizardTech, Inc.
All other products mentioned are registered trademarks or trademarks of their respective companies.