No Difference from ePub 2

3 posts / 0 new
Last post

I am working with epubs version 2 converting them to version 3, I am talking about around 300 epubs. As I go through my work, I want to convince myself that this process should be the best thing to do. Yet, after reading thru facts about the changes in epub 3, I have also tested these myself. I opened/ read my epubs in iBooks on an iMac and iPad. I realized that both epub 2 and epub 3 run videos/ mp4s, they also both run html5 animations, run animated canvas, show MathML formula.

The question is, if both epub 2 and epub 3 show these in iBooks, what is the need of converting it to ePub 3? Will it be necessary to even change it to ePub 3? Please enlighten me.

Well, part of it depends on whether you wish to adhere to standards or not.  Striclty speaking, an EPUB 2 with audio and video or MathML is not compliant.  Try running it against epubcheck and you will see many errors.  Will iBooks render it?  Yes.  Will Readium?  Yes.  That's because neither iBooks or we will (at this time) throw exceptions for invalid content.  Will we throw exceptions in the future? Perhaps.  Could you successfully submit your book to the Apple or Google stores.  No, or they would edit it to make it an EPUB 3.

iBooks will repair your EPUB if it looks like an EPUB 3 and you've just monkeyed with the version number. For example, if you don't have an NCX but have a properties attribute that identifies an EPUB 3 nav doc, it will use the nav doc.

It also seems to use the same renderer for EPUB 2 and EPUB 3 content, so I wouldn't even consider it representative of typical EPUB 2 reading systems (it supports epub 3 features like triggers).

But, like Rick says, sideloading content and getting it to work doesn't mean any vendor will ingest it into their bookstore.

You also have to consider your audience regardless of how you choose to distribute. There are lots of readers of EPUB 2 content who do not use iBooks or Readium, and whose reading systems are only compatible with EPUB 2 as it was defined (no HTML5 support, no scripting, etc.).

Secondary menu