Z Free – Creating and Reading eBooks (1)


There are are quite a few free ebook writer and reader packages available on the internet.  I decided to make an inventory of the various tools, and critique the ones with which I have accumulated some experience …


The preferred ebook reader is somewhat dictated by the type of ebook the user wants to read.  Various formats are used in ebooks, including the ePub, Kindle, eLit, Palm, FB, Mobi, text, html archive, and other lesser used formats.

The eLit format is Microsoft’s, the ePub format is open consortium based, the Kindle is proprietary, the Palm is obsolete, and the Mobi format is the precursor to the Kindle format (originating from a company purchased by Amazon).

“ePub” files are simply zip files with directory structures that allows for text, html, images and so forth. These archive directories contain XML meta data files, indexes, and TOC files in addition to the content. Unzip the ePub archive, find the html directory within it, and open the files you find in that directory with your browser (Voila – instant ePub reader!). This author has found this technique to be quite useful when unable to access regular software perhaps better suited to the purpose.

EBook enthusiasts who choose to read ePub books with the use of an internet browser should know that most authors (including this one) optimize their books for use with hand held ebook readers. These readers typically have small dimensions (4-5 inch widths), so ePub files generally render better within a browser if the browser window is sized to mimic hand held devices.

EBook readers generally support a very rudimentary subset of HTML tags, making the optimization of the text to a specific size range necessary. The browser approach works best with ebooks that are mostly text (e.g. Gutenberg Project books, etc).

While it’s OK to use a plain browser, when circumstances dictate it, most of the time users want a better reading experience than what a simple internet browser (used without an extension) can provide.

The Barnes and Noble Bookstore website has a nice dedicated ePub book reader program for PC computers (requires Windows), and the last time I checked it was free. Of course, they sell the Nook hand held reader.  A hand held device may very well be the best way to read an ebook.  Many people find staring at a vertically positioned PC screen too tiring for extended or pleasure reading activity.

For readers who use the Firefox browser, a Firefox addon package designed to read ePub books is available for download from the official Mozilla/Firefox website. The Chrome browser has an addon purposed to reading ePub books, and at some point Opera’s extension site had an eBook Widget available for download (Until recently, “Widget” was their term for an addon/extension package).

What I like about browser addon/extension packages is that they are in a way “cross platform,” and can be used on operating systems less targeted by major reader software providers.  For instance, the system I’m using at this moment (FreeBSD 9.1) is not generally targeted by commercial software providers (in the realm of ebook reader software).  I’ve found the most popular ebook extension for Firefox 17 works quite well with ePub formatted material, even on my FreeBSD system. I believe the current download counter on the extension site has a tally in the area of a quarter of a million downloads.  It is quite popular.

Users of the Chrome browser may download an extension package for ePub book reading purposes.  The extension site requires users to create a login account before the package may be downloaded.

There is a good reason that browsers seem to work naturally with ebooks.  Most of the ebook formats are html markup language subsets.  Since the browser’s native lingo is markup language, it is well suited for the purpose.  Even the Kindle format is, at the core, a markup based format.  We have been discussing means by which to read ePub files.  A larger number of readers are available for the ePub format because it is not proprietary.  However, in a pinch, a simple browser can be used to view a Kindle book.   If the Kindle ebook does not have DRM rights management applied to it – then it will have the html subset markup somewhere inside of it.  Unlike the ePub format, the Kindle format contains packed binary information in addition to the markup content.  That is why any attempt to view a Kindle file inside of a browser or text editor results in the display of gobbledegook.

On a FreeBSD system, I can use the hexcurse hex editor to find the beginning of the markup block in the Kindle file, so long as it does not have DRM applied.  Then, I can use the Unix tail and head commands to create a browser readable file:

tail -c +102011 greatread.mobi > first_byte_markup.tmp

head -c 53002  first_byte_markup.tmp > browser_readable_greatread.html

The 102011 is the beginning of the markup, as determined by the hex editor, and the 53002 is the length of the markup, also determined by the hex editor. I could have used sed or a half dozen other utilities, and I could have done it using one line if I hadn’t wanted to see intermediate results. Additionally, I could have automated the process of finding the first html block, instead of using hexcurse. In any case, no person in their right mind would use this technique as a substitute for the proper kindle viewer, which is available from Amazon (Windows required) for free  (the last time I checked).  Or, one can just buy the hand held Kindle viewer (better idea).  The tail/head procedure may not work with certain mobi files that have multiple blocks of embedded html within them.  Additionally, any graphic images embedded in the ebook would not be visible in the browser window.

Continue to part two:



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.