EbookReader

From OLPC
Revision as of 20:18, 4 May 2007 by Mchua (talk | contribs)
Jump to navigation Jump to search

Button mappings

Square button : Move mode

  • Tap up/down/left/right - pan (discrete jump) in that direction, as in pgup/pgdown
  • Hold up/down/left/right - scroll (smooth) in that direction, as in arrow keys

Triangle button : Zoom mode

  • Tap up/down - zoom in/out (discrete jump)
  • Tap left/right - decrease/increase text size (discrete jump)
  • Hold up/down - smooth zoom in/out
  • Hold left/right - ??? switch languages/display styles ???

Circle button : Mark mode

  • Tap up/down - fwd/back to next personal mark (bookmarks, highlights)
  • Tap left/right - fwd/back to next "official" mark (chapters, "pages")
  • Hold up/down - move text to select/remove personal mark (with cross button)
  • Hold left/right - ignore/reinstate "official" mark (will still be displayed, but not "jumped to" when tapping left/right in Mark mode)

Cross button

  • In Move mode - set as default location
  • In Zoom mode - set as default zoom
  • In Mark mode - select/deselect text to make personal mark

Features list

  • zoom
  • page up/down
  • smooth scroll
  • text selection
  • links (sections, footnotes)
  • ability to customize use
  • bookmarking (specialized form of annotation)

Misc. notes

On flow

A reader needs flow hints to know which way to page/scroll through text (multicolumn text, RTL and LTR languages, books with "blocks" of content broken up across the screen, possibly of different sizes as in comic books). How do we embed these flow hints within book files?

Balance between artistic freedom for graphic design (okay, do you /really/ want to have to nudge all the pixels in by hand? like how folks used to set slugs in type?) and standardization/readability; css/skinning can look great, but it's also very "standardized" (unless you introduce deliberate randomness?)

On chording

How many buttons can we keep track of being pressed simultaneously? (Can we use chords as separate commands?)

Other functionalities

  • Text to speech reader (plugin)
  • Spreeder-like speed reader (plugin)