PDF Outlines & Bookmarks Inspector
PDF Outlines & Bookmarks Inspector: Traverses `/Outlines` dictionary tree, extracting title strings and destination page numbers.
About this pdf outlines & bookmarks inspector
PDF Outlines & Bookmarks Inspector — browser-based utility.
How this tool works
Implements client-side PDF Outlines & Bookmarks Inspector operations. Traverses `/Outlines` dictionary tree, extracting title strings and destination page numbers specifically designed for a reader extracts the hierarchical table of contents (outlines) from a 300-page technical pdf.
- PDF Catalog & XRef Ingestion: Parses binary PDF headers, trailer dictionaries, and cross-reference streams to index document object IDs.
- Page Tree & Box Dimension Inspection: Reads /MediaBox, /CropBox, and /Rotate attributes for each page dictionary in the document hierarchy.
- Symmetrical Coordinate Transformation: Calculates offsets relative to existing [x, y] origins for margin trimming or updates /Rotate angles.
- Document Re-serialization: Re-serializes the PDF object stream, updating byte offsets in the XRef table and preserving AcroForm dictionaries.
Worked example
Scenario: Inspect a local one-page PDF with one outline bookmark.
Sample input:
Processing: Call PDF.js getOutline and recursively report title, simplified destination, and children.
Illustrative output:
Limits and verification
Password-encrypted PDF files must be decrypted before processing. Margin cropping offsets cannot exceed half of the page width or height. Files with damaged XRef tables are repaired automatically where possible.
Examples demonstrate an expected workflow; they do not prove every input or every branch of an external specification. Check important results with an independent source before using them for money, security, compliance, safety, or irreversible file changes.
Browser processing boundary
Tool input is processed by code running in the browser and is not intentionally sent to a CZOA processing API. The page can still request ordinary site assets, analytics, or advertising when those services are enabled. Browser extensions and managed-device software remain outside this tool's control.
Relevant references
These references govern or help explain the format, protocol, or calculation used here. Listing a reference does not claim certification or complete implementation of every optional feature.
Content owner: CZOA Tools · Last reviewed: 2026-09-15 · Review methodology
How to use it
- Enter, paste, or select your input data into the PDF Outlines & Bookmarks Inspector workspace controls.
- Review available parameter fields, units, formats, or options configured for your task.
- Click the action button or observe immediate live calculations rendered in your browser runtime.
- Inspect the resulting output and any diagnostic messages, then copy or download the result if needed.
Frequently asked questions
How does PDF Bookmarks Inspector create its tree?+
It loads the first selected PDF with PDF.js, calls getOutline(), and recursively maps each returned item to title, destination, and children. destination is a string destination when item.dest is a string, explicit destination for another truthy destination, otherwise null. It also reports PDF.js page count.
Which controls and output are available?+
The page has one local PDF picker and Process locally. It has no outline editor, page-number resolver, bookmark creator, destination navigator, export, download, page range, or save control. Output is readonly JSON with pages and bookmarks.
What are the outline limits?+
The result mirrors the PDF.js outline model, not a complete PDF specification view. It does not resolve explicit destinations to page numbers, expose style, color, open state, actions, named destinations, annotations, labels, or every malformed outline case. A PDF with no outline returns an empty bookmarks array.
What did isolated browser verification establish?+
In an isolated Chromium test, an independent one-page PDF with a Fixture bookmark returned the page count and outline title; independent pypdf inspection found the same outline title. This covers the tested title tree, not all destinations or malformed outlines.
