21 lines
1.1 KiB
Markdown
21 lines
1.1 KiB
Markdown
# 03-01 Summary
|
|
|
|
## Outcome
|
|
|
|
Wave 1 landed the page metadata contract without breaking the existing offset-based book model.
|
|
|
|
- Added `RDEPUBTextPageBreakReason`, `RDEPUBTextAttachmentKind`, and `RDEPUBTextPageMetadata` in `RDEPUBReadingModels.swift`
|
|
- Added attributed-string keys in `RDEPUBTextRenderer.swift` for block range/index, fragment id, and attachment kind
|
|
- Extended `RDEPUBTextPage` with `metadata`
|
|
- Extended `RDEPUBTextChapter` with `pageBreakReasons`
|
|
- Tagged normalized attributed content in `RDEPUBTextRendererSupport.normalizeReadingAttributes` so later pagination can inspect block and attachment semantics
|
|
|
|
## Compatibility
|
|
|
|
- `pageStartOffset`, `pageEndOffset`, `contentRange`, `fragmentOffsets`, and chapter text continuity remain intact
|
|
- Existing `RDEPUBTextBook` page lookup and location mapping continue to operate on absolute chapter offsets
|
|
|
|
## Notes
|
|
|
|
This wave deliberately extended the current book contract instead of replacing it. That kept highlight/search/navigation consumers stable while creating a place to land richer pagination semantics in Wave 2.
|