@effortlessmotion/pdf-to-md
    Preparing search index...

    Interface AnalysisPage

    One page's flat words plus its structural blocks.

    interface AnalysisPage {
        blocks: AnalysisBlock[];
        page: number;
        words: AnalysisWord[];
    }
    Index
    blocks: AnalysisBlock[]
    page: number
    words: AnalysisWord[]

    Flat, page-relative word list; AnalysisBlock.wordIndexes indexes into it. box is always normalized [0,1], origin bottom-left, y up, regardless of path. OCR-path is genuinely per-word; TEXT-path is per visual LINE (box.w always 0, box.y the line's baseline) — coarser but honest, not faked.