Loading
Loading tool
The tool is loaded only when you open it.
All processing for this tool happens in your browser. Your input is not sent to a server.
About this tool
Read a supported outline, add roots or children, rename titles and move or remove complete branches. Saved bookmarks are reloaded and every output page must preview before download.
Common uses
- Create a navigable chapter outline for a PDF without changing its page content.
- Repair titles, hierarchy and local page targets before sharing a document.
How to use it
- 1.Choose one PDF or load the local example. Unsupported or malformed outlines are rejected without rewriting.
- 2.Edit titles and physical page numbers; add roots or children, move complete sibling branches, remove a branch, or choose its expanded state.
- 3.Create the PDF. Check the saved outline receipt and every actual-output page, then download and inspect the outline in your reader.
Executed local examples
Unicode hierarchy
Local example: Introduction 简介 はじめに -> page 1; child Details 详情 詳細 -> page 2; Conclusion 结论 まとめ -> page 3.
3 bookmarks; depths [0,1,0]; pages [1,2,3]; titles verified after saving.
Move and remove a branch
Move root Introduction below Conclusion, then remove Introduction and its child.
1 bookmark: Conclusion 结论 まとめ -> page 3; depth 0.
Limits and notes
- 1 PDF / 10 MiB / 50 pages / 200 bookmarks / 8 levels / 256 UTF-16 title units. Output 40 MiB. Each read, worker and preview phase has a cancellable 30-second deadline. Previews: 512px edge, 262144 pixels per page, 16 MiB total. Field tree: 500 nodes / 16 levels; annotations: 1000. Compressed resources can consume more memory; no hard decoded-memory cap.
- Titles support well-formed Unicode, including Chinese and Japanese, without embedding fonts because they are outline metadata. Empty/whitespace titles, control characters, bidi controls and unpaired surrogates reject. Each bookmark must target a physical page from 1 through the page count.
- Supports explicit local page destinations and local GoTo actions. Named destinations, non-navigating headings, remote/URI/JavaScript bookmark actions and malformed/shared/cyclic trees reject. Original destination views and zoom are replaced by /Fit; original bookmark color, bold and italic styling are not preserved. Moving or deleting a branch includes all its descendants.
- Encrypted PDFs, signatures/permissions, XFA, catalog/page/additional actions, JavaScript name trees, unsafe annotation actions and invalid geometry reject. Ordinary safe URI/GoTo annotation links and supported unsigned forms can remain, without executing scripts or fetching document URLs. This is not signing, redaction or sanitization: attachments, metadata and hidden/unreachable objects may remain.
- Saved output is reloaded to verify titles, hierarchy, targets, order, open state, page boxes/rotations and page content/annotation references. Previews can differ between readers/fonts; no universal losslessness claim. File, edits, reset, language, clear or cancel invalidate previous output. No upload or input persistence.
Frequently asked questions
Can I use Chinese or Japanese titles?
Yes. Outline titles are Unicode metadata and do not paint glyphs onto pages. This does not add font support to the PDF page content.
What does moving a bookmark move?
The complete branch, including descendants, moves before or after the adjacent sibling. A branch stays within its parent. Add child creates the next level; remove deletes the complete branch.
Are view and style settings preserved?
No. Destinations become local page /Fit destinations; zoom, view coordinates, color and bold/italic settings are regenerated. Unsupported named or nonpage targets reject instead of disappearing.