PDFOxide

PDF toolkit built around a Rust engine, exposed as native bindings for ~20 languages (Python, JavaScript/TypeScript, Go, C#/.NET, Java, and more), a CLI, and an MCP server for AI-assistant integration: text/character-level and image extraction, form-field reading and filling, Markdown/HTML conversion with heading detection, PDF creation and editing, watermarking, merging/splitting, regex-based search, and metadata access.

Sample Results

Real output from running this tool against a sample PDF, as part of PDFog's open-source PDF tooling benchmark.

Input: sample-brochure.pdf

Loading PDF…

uv run python3 ./tests/pdf_oxide_extract.py "sample-brochure.pdf" "sample-brochure--pdfoxide-rust.txt" "sample-brochure--pdfoxide-rust.txt"

Output: sample-brochure--pdfoxide-rust.txt

221 Queen Street, Melbourne VIC 3000 apartment 2 1 1 $1,000,000

Prince Cascading 1234-5678

Additional Information

Land Size 1171m2

House Size -

Map Ref. -

Energy Rating -

Council Rates -

Water Rates -

WARM BEAUTIFUL APARTMENT

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc turpis ante, fermentum ac cursus vitae, tempus vel ipsum. Proin justo lorem, mattis sed pharetra ac, vehicula tincidunt sem. Mauris est leo, scelerisque at gravida vel, interdum quis felis. Nullam nibh magna, consectetur eu aliquet ac, sollicitudin eget nisl. Praesent nibh tellus, elementum ut scelerisque a, pretium eget libero. Morbi sodales tincidunt turpis et sagittis. Aenean sed dictum nisi.

Phasellus quis metus lectus. Donec varius pellentesque purus, et ornare enim pellentesque sed. Morbi quam augue, pulvinar sit amet mollis in, euismod porta orci. Quisque rutrum egestas enim ac viverra. Mauris blandit tristique feugiat. Ut molestie molestie turpis sed elementum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas in nunc odio. Nunc sagittis, mi ut ornare pellentesque, orci augue dapibus est, vel rutrum elit orci vel augue.
uv run python3 ./tests/pdf_oxide_extract.py "sample-brochure.pdf" "sample-brochure--pdfoxide-rust.md" "sample-brochure--pdfoxide-rust.md"

Output: sample-brochure--pdfoxide-rust.md

**221 Queen Street, Melbourne VIC 3000** apartment **2 1 1**

#### WARM BEAUTIFUL APARTMENT

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc turpis ante, fermentum ac cursus vitae, tempus vel ipsum. Proin justo lorem, mattis sed pharetra ac, vehicula tincidunt sem. Mauris est leo, scelerisque at gravida vel, interdum quis felis. Nullam nibh magna, consectetur eu aliquet ac, sollicitudin eget nisl. Praesent nibh tellus, elementum ut scelerisque a, pretium eget libero. Morbi sodales tincidunt turpis et sagittis. Aenean sed dictum nisi.

Phasellus quis metus lectus. Donec varius pellentesque purus, et ornare enim pellentesque sed. Morbi quam augue, pulvinar sit amet mollis in, euismod porta orci. Quisque rutrum egestas enim ac viverra. Mauris blandit tristique feugiat. Ut molestie molestie turpis sed elementum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas in nunc odio. Nunc sagittis, mi ut ornare pellentesque, orci augue dapibus est, vel rutrum elit orci vel augue.

#### Additional Information

Land Size

House Size

Map Ref.

Energy Rating

Council Rates

Water Rates $1,000,000

#### Prince Cascading 1234-5678

1171m2

preserve_layout=True: attempts to preserve original spatial positioning/columns rather than reading-order flow, for both formats.

uv run python3 ./tests/pdf_oxide_extract.py "sample-brochure.pdf" "sample-brochure--pdfoxide-rust--preserve-layout.txt" "sample-brochure--pdfoxide-rust--preserve-layout.txt" --preserve-layout

Output: sample-brochure--pdfoxide-rust--preserve-layout.txt

221 Queen Street, Melbourne VIC 3000 apartment 2 1 1 $1,000,000

Prince Cascading 1234-5678

Additional Information

Land Size 1171m2

House Size -

Map Ref. -

Energy Rating -

Council Rates -

Water Rates -

WARM BEAUTIFUL APARTMENT

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc turpis ante, fermentum ac cursus vitae, tempus vel ipsum. Proin justo lorem, mattis sed pharetra ac, vehicula tincidunt sem. Mauris est leo, scelerisque at gravida vel, interdum quis felis. Nullam nibh magna, consectetur eu aliquet ac, sollicitudin eget nisl. Praesent nibh tellus, elementum ut scelerisque a, pretium eget libero. Morbi sodales tincidunt turpis et sagittis. Aenean sed dictum nisi.

Phasellus quis metus lectus. Donec varius pellentesque purus, et ornare enim pellentesque sed. Morbi quam augue, pulvinar sit amet mollis in, euismod porta orci. Quisque rutrum egestas enim ac viverra. Mauris blandit tristique feugiat. Ut molestie molestie turpis sed elementum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas in nunc odio. Nunc sagittis, mi ut ornare pellentesque, orci augue dapibus est, vel rutrum elit orci vel augue.

preserve_layout=True: attempts to preserve original spatial positioning/columns rather than reading-order flow, for both formats.

uv run python3 ./tests/pdf_oxide_extract.py "sample-brochure.pdf" "sample-brochure--pdfoxide-rust--preserve-layout.md" "sample-brochure--pdfoxide-rust--preserve-layout.md" --preserve-layout

Output: sample-brochure--pdfoxide-rust--preserve-layout.md

**221 Queen Street, Melbourne VIC 3000**apartment **2 1 1**

#### WARM BEAUTIFUL APARTMENT

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc turpis ante, fermentum accursus vitae, tempus vel ipsum. Proin justo lorem, mattis sed pharetra ac, vehiculatincidunt sem. Mauris est leo, scelerisque at gravida vel, interdum quis felis. Nullamnibh magna, consectetur eu aliquet ac, sollicitudin eget nisl. Praesent nibh tellus,elementum ut scelerisque a, pretium eget libero. Morbi sodales tincidunt turpis etsagittis. Aenean sed dictum nisi.

Phasellus quis metus lectus. Donec varius pellentesque purus, et ornare enimpellentesque sed. Morbi quam augue, pulvinar sit amet mollis in, euismod porta orci.Quisque rutrum egestas enim ac viverra. Mauris blandit tristique feugiat. Ut molestiemolestie turpis sed elementum. Lorem ipsum dolor sit amet, consectetur adipiscing elit.Maecenas in nunc odio. Nunc sagittis, mi ut ornare pellentesque, orci augue dapibusest, vel rutrum elit orci vel augue.

#### Additional Information

Land Size

House Size

Map Ref.

Energy Rating

Council Rates

Water Rates $1,000,000

#### Prince Cascading 1234-5678

1171m2