View Single Post
Old 10-14-2010, 02:31 AM   #3
ldolse
Wizard
ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.ldolse is an accomplished Snipe hunter.
 
Posts: 1,337
Karma: 123455
Join Date: Apr 2009
Location: Malaysia
Device: PRS-650, iPhone
If you were going to choose a single format it should be either epub or mobi. I would suggest epub because it's an industry/community standard, and you have good control over the markup to make it look quite close to the original book.

If you went that route you could convert it to from html to epub using Calibre and then finalize your book using Sigil. If you're not comfortable with css the justification is easiest to change with Sigil, and you can tweak the Table of Contents further there.

As to why the conversion process seemed to be hanging while converting from epub to mobi/pdb, we'd need more information. You could either open a bug directly at bugs.calibre-ebook.com, with an attached file, or you could just post the output of conversion log here. You can get that by clicking on jobs in the lower left hand corner of the GUI, selecting the job that's hanging, and copying all the conversion details.


The main reasons I'd recommend mobi is because the Kindle probably makes Mobi the most widely used format, and mobi to epub conversions are generally flawless, while epub to mobi conversions depend on whether or not newer css features were used.


For either format you could get the table of contents to include the foreword and preface by changing the chapter detection xpath in the Calibre Structure detection options under conversion:

This is the default:
Code:
//*[((name()='h1' or name()='h2') and re:test(., 'chapter|book|section|part\s+', 'i')) or @class = 'chapter']
Try changing it to this:
Code:
//*[((name()='h1' or name()='h2') and re:test(., 'chapter|foreword|preface|book|section|part\s+', 'i')) or @class = 'chapter']
ldolse is offline   Reply With Quote