diff --git a/docs/epub-toc-navigation.md b/docs/epub-toc-navigation.md index 6f40af82..b84d3871 100644 --- a/docs/epub-toc-navigation.md +++ b/docs/epub-toc-navigation.md @@ -159,6 +159,43 @@ When `startNewTextBlock` reuses an empty text block (the early-return path), `wo `scripts/generate_spine_toc_edges_epub.py` generates `test/epubs/test_spine_toc_edges.epub`, a purpose-built epub that exercises spine/TOC relationship patterns. See the script header for the full list of edge cases covered. +## Printed-page labels (status bar hint) + +The status bar can show the printed-book page number for the current rendered page in addition to the device-relative `currentPage/pageCount` counter, e.g. `(42) 137/305 18%`. The printed-page label is sourced from the EPUB itself; the device counter remains authoritative for spine pagination. + +### Three input formats + +The reader accepts printed-page data from three places, in priority order: + +1. **Inline `doc-pagebreak` markers** in the XHTML (EPUB 3 accessibility convention): any element with `role="doc-pagebreak"` or `epub:type="pagebreak"`. The visible label is read from `aria-label`, falling back to `title`, falling back to the NCX/nav/page-map label if cross-referenced. +2. **EPUB 3 `