PDF clickable link target inventory
Read real PDF Link annotations, declared actions and named destinations into complete local JSON and CSV.
- 1Add input
- 2Review and run
- 3Get your result
Tool input and files are processed in this browser without being uploaded.
Before you start
Inspect actual clickable annotations, including missing, dangling and explicitly unsupported targets. URI, JavaScript and launch declarations remain inert text; nothing is opened, executed, requested or repaired. Rectangles use raw PDF points, not rotated screen coordinates.
How to use this tool
- Choose a local PDF.
- Review target states and raw page rectangles.
- Download complete JSON/CSV before investigating a declared target elsewhere.
Supported inputs and limits
One unsigned, unencrypted PDF up to 30MiB and 500 pages; 200,000 parsed objects, depth 64, 10,000 annotations and destinations, 1,000 NameTree nodes, 16MiB extracted strings and 4,096 bytes per PDF name. Full JSON/CSV combined 20MiB. Object/XRef streams total 80MiB decoded; plain/Flate/LZW/ASCII85/ASCIIHex/RunLength, up to four filters, Predictor=1 only (LZW EarlyChange=0/1). Both cases of legal #hex names are parsed without dropping records.
Resolve direct targets, legacy Dests and full Names/Dests trees using original byte ordering and limits. First release declares URI, GoTo, GoToR, Launch, Named and Next; other actions retain original type/declaration as unsupported. Cycles, conflicting page ownership, duplicate names, malformed trees and invalid URI types fail the whole inventory.
Preview only the first 200 rows and 2,000 UTF16 characters per cell. Complete downloads retain targets. A written URI is not evidence of network reachability or safety; text URLs outside Link annotations are not counted.
Worked example
Example input
Three-page PDF with 11 real Links: URI, named/legacy/direct page targets, missing target, Launch, Named, JavaScript and Next.
Example options
{}Example output
11 links, two named destinations; internal targets resolve to pages 1–3, missing/dangling and unsupported actions remain explicit.
When something does not work
Correct contradictory annotation/page references or destination trees in a full PDF editor, then select the corrected file. Failure or cancellation discards the inventory; no partial success report is offered.
Frequently asked questions
Why does a target exist when clicking did nothing?
The file may declare a missing named destination, a remote file, an unsupported viewer action or a URI. This tool reads the declaration and local page resolution without opening or fixing it.