Tiny Online Tools logoTiny Online ToolssearchSearch tools…grid_viewAll Tools
Homechevron_rightPDF Toolschevron_rightPDF Structured Data ExtractorPDF Structured Data Extractor

PDF Structured Data Extractor

Turn a PDF into structured JSON — headings, paragraphs, lists, tables and images — from its tagged structure tree or from layout inference.

upload_file

Click to browse or drag & drop files here

Select a PDF to read the structure of

Accepted: .pdf,application/pdf

Similar Tools

PDF Link Extractor

PDF Link Extractor

List every link in a PDF — external, internal, mailto, and the bare URLs in the text that carry no annotation — with pages, anchor text and risk flags.

PDF Embedded File Extractor

PDF Embedded File Extractor

Find and download every file attached inside a PDF, including attachments hidden in annotations and PDF 2.0 associated files.

PDF Image Extractor

PDF Image Extractor

Pull the original embedded images out of a PDF — JPEGs byte for byte, everything else as PNG — with intrinsic size, drawn size and effective DPI.

PDF Table Extractor

PDF Table Extractor

Find the tables inside a PDF and export them to CSV or XLSX, with the detection method and confidence shown for every table.

Text Shadow Generator

Text Shadow Generator

Build CSS text-shadow effects with live preview.

Regex Tester

Regex Tester

Test regular expressions with live match highlighting and replace mode.

PDF to JPG

PDF to JPG

Convert PDF pages into high-quality JPG images.

apps

More Tools

Browse our full collection of free online tools.

What this tool actually reads

Most "PDF to JSON" converters give you a flat wall of text. A document is not flat: it has headings, paragraphs, lists, tables and figures, and losing that hierarchy is what makes the output useless for indexing, migration or feeding a retrieval pipeline. This tool reconstructs the hierarchy — and, more importantly, tells you where each answer came from.

Source 1 — the tagged structure tree

An accessible PDF carries a structure tree: the producer wrote down, explicitly, that this run of glyphs is an H2 and that one is a P, with figures carrying alternative text. When it exists, that tree is the document's own statement about itself and this tool uses it verbatim, including the heading levels and any /Alt text on figures. Pages read this way are labelled tagged.

Source 2 — layout inference

Most PDFs have no such tree. Then structure has to be inferred from geometry:

  • The modal line height — the size most of the characters on the page are set in — is taken as the body text size.
  • A line meaningfully taller than the body is a heading, and how much taller decides the level.
  • A line that begins with a bullet or a 1. marker and is indented past the body's left edge is a list item; consecutive ones become one list.
  • Consecutive body lines with a normal line gap merge back into one paragraph, so a sentence split across four lines arrives as one sentence.
  • Tables come from the table detector, and the lines inside a detected table are removed from the flow so the same content is not emitted twice.

Pages read this way are labelled inferred, and that label is not decoration. Inference gets a two-column layout, a running header or a pull-quote wrong from time to time, and you should check the outline against the page preview before trusting it.

Using the output

Every block carries its bounding box, so you can map a JSON node back to a place on the page. Click any row in the outline to highlight it in the preview, or click a highlighted region to jump to its row. The JSON can be copied or downloaded whole.

Privacy

The file never leaves your device. Parsing, structure recovery and export all happen in the browser, with no network requests during processing.