The parent project is:

The dotBook application will be a book reader that can download, display and cache books in a special JAR file format. The format will allow digital signatures with PGP and allow books to have chapters and paragraphs that can be found conveniently from within the application but will link sources outside books by opening the default web browser. Book pages will be HTML pages with some restrictions.

Design Goals

The goal is to have an XML descriptor format to be stored outside the book (JAR file) and an XML content format to be stored inside the JAR file. A compound format that allows to combine descriptor, JAR file and signatures in a single file is being considered. Reading the descriptor should be very easy and not require to read the JAR file, so the JAR file will possibly be compressed and appended to the uncompressed descriptor.

The book layout will honor CSS PrintLayouts.

The XML content will allow for imprints following an independent specification for XML imprints, factored out from the project.

The dotBook editor will allow to edit a limited subset of the MediaWiki syntax and a subset of HTML.

The format is intended to be useful on e-Paper devices that can hibernate between turning pages. A sequential page order will be encouraged, while still allowing to set anchors and links inside pages. Animated content will be discouraged: It will probably only be animated on user request. That means all animated images will be replaced by empty boxes with the text "Animation <n>: [play]" inside, if no still image is provided to take the place.


Version 0.3.5


This requires Mozilla 1.7.8+ (GTK2) on Linux-x86, support for Windows is unverified, other systems are unsupported. Webstart apparently needs two program starts to recognize a new program release.
Launch version 0.3.5 with Java WebStart:
-> bookreader.jnlp
On Linux the SWT Browser requires MOZILLA_FIVE_HOME to be set and LD_LIBRARY_PATH to include MOZILLA_FIVE_HOME. If the book reader is webstarted from Mozilla the correct settings are inherited, otherwise the environment of the javaws process has to be modified to contain them (e.g. by editing .cshrc or .bashrc).




Related projects


Author: Bernhard Fastenrath Logo