bnc tech forum 2010: designing ebooks for epub reading engines

38
Open source ePub: Digital Books Liza Daly Threepress Consulting Inc. Thursday, April 1, 2010

Upload: liza-daly

Post on 09-May-2015

18.399 views

Category:

Education


4 download

DESCRIPTION

Instead of becoming alarmed at the proliferation of ereaders and ebook softwares, designers and publishers should be thinking about the two dominant ePub reading engines: Adobe Reader Mobile SDK and WebKit. This talk will help ebook producers understand what a reading engine is, and how this framework can greatly simplify ebook crafting, design and testing.

TRANSCRIPT

Page 1: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Open source ePub: Digital Books

Liza DalyThreepress Consulting Inc.

Thursday, April 1, 2010

Page 2: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Thursday, April 1, 2010

This is the collection of ereaders and mobile devices I have at the office. I use them to test ebooks as well as report on the capabilities of the various hardware readers out there.

Page 3: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

TextPlus one netbook, two Macs, one Windows laptop, and an iPad (on order).

Thursday, April 1, 2010

That doesn’t even count the most popular ereading devices today: the multiple computers, netbooks and tablets.

Page 4: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

?Thursday, April 1, 2010

The challenge: How do book designers and publishers effectively design ebooks for large screens, small screens, and screen dimensions and platforms that haven’t launched yet?

Page 5: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Thinking about devices

Thursday, April 1, 2010

Page 6: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Thinking about devices

Thinking about reading engines

Thursday, April 1, 2010

I’d like to propose that we change the conversation from thinking about specific devices (which multiply every day) to thinking about “reading engines.”

Page 7: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Reading engines put text on the screen

Thursday, April 1, 2010

A reading engine is the part of the ereading software that actually places text on the screen. It’s the most basic, primitive component of any ereader.

Page 8: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Mobi: fail

AdobeReader Mobile SDK

WebKit

Thursday, April 1, 2010

Fortunately for ebook producers, there are far fewer reading engines than devices. This talk will focus on the two most popular reading engines for ePub books: Adobe Reader Mobile SDK (RMSDK) and WebKit.

Page 9: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Adobe Reader Mobile SDK

Software that is licensed to device-makers and software partners to provide Adobe’s

EPUB support and DRM.

Thursday, April 1, 2010

Page 10: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Adobe Reader Mobile SDK

Thursday, April 1, 2010

RMSDK doesn’t technically power Adobe Digital Editions, but it’s very close in terms of its behavior.

Page 11: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Adobe Reader Mobile SDK

Thursday, April 1, 2010

Page 12: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Adobe Reader Mobile SDK

Thursday, April 1, 2010

RMSDK includes both the reading engine and the DRM server. Licensees get both, so in most cases if a reader supports Adobe EPUB DRM, it uses the RMSDK reading engine.

Page 13: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

With great power...

• Limited CSS support•No support for foreign

characters (without font embedding)•Narrow default margins•Multimedia only via Flash•Adobe-only extensions

•Almost industry- standard DRM•Consistent rendering

across devices• SVG support• Flash support•More precise pagination

and layout controls

Thursday, April 1, 2010

There are some advantages and disadvantages to this approach. I’m going to focus on how to turn the disadvantages into cost savings during ebook production.

Page 14: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

...at least the bugs are consistent

Thursday, April 1, 2010

Once you understand what uses RMSDK, it’s possible to see the same issues across many different software programs and devices.

Page 15: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Readers using the RMSDK:

•Digital Editions• Sony Reader• Sony desktop reader•Barnes & Noble nook• IREX

• txtr• Spring•PlasticLogic•Kobo Reader (device

only)

Thursday, April 1, 2010

Page 16: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

WebKit

Thursday, April 1, 2010

WebKit powers a number of different web browsers and mobile browsers. If you’ve used Google Chrome, Safari, the iPhone/iPad/iPod Touch, Android or Palm Pre/Pixi, you’ve used WebKit.

Page 17: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

WebKit

Thursday, April 1, 2010

Though there are other browser engines on the desktop web (IE, Firefox’s Gecko, Opera), WebKit has quickly dominated the mobile web.

Page 18: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

WebKit

Thursday, April 1, 2010

and it’s expected to grow as other kinds of mobile devices replace their own browsers with it.

Page 19: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Ereaders using WebKit

Thursday, April 1, 2010

Although WebKit isn’t technically a reading engine, because ePub is so similar to web technologies, it makes an excellent tool for building an ereader. Most mobile ereaders use WebKit, and any browser-based solution (Bookworm, Ibis Reader) will be using it on the right browser. iBooks is almost certainly WebKit-based.

Page 20: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Ereaders using WebKit

Thursday, April 1, 2010

Some devices are hybrids. The Spring Design Alex ereader uses both RMSDK and WebKit, via its built-in Android browser.

Page 21: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

WebKit vs. Mobile SDK(Barnes & Noble vs. itself)

Thursday, April 1, 2010

Some ecosystems are also hybrids. Kobo also follows this pattern, where they have a custom WebKit-based software for computers and mobile devices, but RMSDK on hardware devices.

Page 22: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Designing for 99 devices

Thursday, April 1, 2010

Page 23: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Designing for 99 devicesDesigning for 2 reading engines

Thursday, April 1, 2010

So thinking about reading engines can really simplify issues around ebook design.

Page 24: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Avoid Adobe-specific extensions...

...except to solve Adobe-specific problems

Surviving Digital Editions

Thursday, April 1, 2010

Here are some techniques for optimizing for the Adobe ecosystem without affecting the validity of your ebooks.

Page 25: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Page templates (XPGT) control the layout and flow of pages in ADE-related reading engines

Mostly harmless

http://blogs.adobe.com/digitaleditions/template.html

Thursday, April 1, 2010

Page 26: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

http://blogs.adobe.com/digitaleditions/template.html

Mostly harmless

XPGT lets you control page breaks and widths of columns in RMSDK software, and still produce valid ePubs

Thursday, April 1, 2010

Page 27: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Mostly harmless

Work around RMSDK’s poor international font support with embedded open-source fonts.

http://blog.threepress.org/2009/09/16/how-to-embed-fonts-in-epub-files/

Thursday, April 1, 2010

Page 28: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Considered harmful

InDesign font obfuscation isn’t compatible with other systems and isn’t in the ePub spec.

http://blog.threepress.org/2009/09/16/how-to-embed-fonts-in-epub-files/

Thursday, April 1, 2010

Page 29: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Considered harmfulADE will only display the first dc:author - don’t work around by adding multiple authors in a single field. That’s bad metadata!

http://blog.threepress.org/2009/11/27/practical-epub-metadata-authorship/

Thursday, April 1, 2010

Page 30: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Considered harmful

Adobe’s page-map, mapping print pages to ebook “pages,” is not in the ePub spec and won’t work anywhere else.

http://blog.threepress.org/2009/11/26/adobe-page-map-versus-ncx-pagelist/

Thursday, April 1, 2010

Page 31: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Designing for the future of ePub

Keep markup minimal and semantic.

Thursday, April 1, 2010

Page 32: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Designing for the future of ePub

Specifying the spacing between a header and body text is presentational.

Specifying some spacing between a scene change is semantic.

Keep markup minimal and semantic.

Thursday, April 1, 2010

Some tips that will work well in WebKit and all future ePub implementations include being thoughtful about what design elements are specified in the book. Try to keep to purely semantic markup and styling.

Page 33: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Designing for the future of ePub

Prefer padding to margin.

Use Adobe’s extensions to handle page breaks and margins; let other readers decide for “themselves.”

Restrict CSS to inside the content.

Thursday, April 1, 2010

Page 34: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Test and preview in:

RMSDKBig WebKitLittle WebKit

Thursday, April 1, 2010

My recommended testing paradigm: test in one RMSDK device/software (usually ADE), one “big WebKit” like a web browser or iPad, and one “small WebKit”, or mobile device or browser.

Page 35: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Multimedia?

No HTML5 in ePub...

...but no Flash on the iPad

Thursday, April 1, 2010

Designing for the future of ePub: what about multimedia? Unfortunately Flash is no longer the easy answer. HTML5 <video> adoption will come to ePub eventually, but for now it will produce invalid ebooks in most case.

Page 36: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

These companies are betting HTML5:

and provide significant resources for WebKit development...

Thursday, April 1, 2010

However, looking ahead, I think the smart money is on what Google and Apple are doing.

Page 37: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Designing for the future of ePub

...means designing for WebKit

Thursday, April 1, 2010

This doesn’t mean that you should ignore the Adobe ecosystem! It’s the most significant part of the marketplace right now. And don’t design two different ebooks -- all these techniques can be used in the same ePub file successfully. But in my opinion, the future will be browser-like reading engines.

Page 38: Bnc Tech Forum 2010: Designing ebooks for ePub reading engines

Thanks!

Liza DalyTwitter: @[email protected]

http://threepress.org

Thursday, April 1, 2010