Best Practices for EPUB3 reading systems to apply user setting

2 posts / 0 new
Last post

Users of commercial reading systems have come to expect reading settings such as font size, font color, background color, font face.

I'm looking to understand technical best practices for reading systems to reliably implement such user controls.

Do members of this forum have suggestions or comments on such best practices, or are you aware of articles or white papers that address this very tricky and core issue of making commercially viable EPUB3 reading apps?


Any setting of the audience with high priority may cause conflicts with author stylesheets.
One has to ensure, that the audience always has enough options to solve such conflicts.

The core problem appears, if a viewer (you may call it reading system) tries to combine
author stylesheets , viewer stylesheets and audiences stylesheets ignoring the CSS rules for this combination - or providing only an interface for the audience to manipulate only an incomplete set of properties.
Additionally there appear problems with pairs of properties, that belong together - background and color have to fit. If the viewer allows the audience to overwrite the background, it must insist to set the color to an appropriate value as well - together with CSS cascades and priorities of different selectors and stylesheets from different sources, this is a difficult task.
In combination with non trivial SVG content this task is more than difficult - the SVG content
should have a meaningful primary presentation without CSS, but it may share background and color with an embedding document as well.

One idea is obviously to provide an interface to select between different author stylesheets for
a complete book, not only for single documents within the book.
With this one makes use of the intelligence of the author to provide meaningful alternate styles instead to relying on typically not intelligent programs, that do not completely understand the consequences of combining author stylesheets with settings of the audience - what can be a quite complex problem, not really predictable without human intelligence.

Additionally one should allow to switch off authors stylesheets completely (authors should provide an empty or minimalistic alternate stylesheet for this purpose anyway) - but note, that for SVG content the primary presentation using only presentations attributes must not be switched off, only the styling, else typically one gets nonsense - try Mozilla/Geckos/Firefox to see the nonsense for non trivial SVG content ;o)

This option to switch to a default stylesheet of the viewer or to one of the audience ensures in doubt, that settings for colors, font size etc does not cause unsolvable problems and conflicts with author stylesheets, causing accessibility issues.

Secondary menu