# OpenDataLoader PDF

> Open-source PDF parser that converts PDFs into Markdown, JSON with bounding boxes, and HTML for RAG pipelines, plus auto-tagging for accessibility.

OpenDataLoader PDF is an Apache-2.0 open-source PDF parser from the opendataloader-project organization. It converts PDFs into LLM-ready Markdown, JSON with bounding boxes, HTML, and Tagged PDF, and runs locally on CPU without a GPU. SDKs are available for Python, Node.js, and Java.

## What It Is

OpenDataLoader PDF is a document-parsing library and CLI for developers building RAG and LLM pipelines. It takes digital, scanned, or tagged PDFs and produces structured output: headings, paragraphs, tables, lists, images, captions, and formulas, each with a page number and bounding box for source citations. It uses the XY-Cut++ algorithm for reading order in multi-column layouts and filters headers, footers, watermarks, and hidden text. It does not process Word, Excel, or PowerPoint files.

## Local and Hybrid Modes

The default local mode is deterministic and rule-based. Hybrid mode runs a local AI backend, started with the `opendataloader-pdf-hybrid` command, that handles complex pages. It adds borderless-table handling, OCR for scanned PDFs (80+ languages, with selectable engines such as EasyOCR, RapidOCR, Tesseract, and Apple Vision), LaTeX formula extraction, AI descriptions of charts and images, and heading-hierarchy inference. The project publishes benchmark results in which its hybrid mode ranks first overall (0.907), a vendor-reported result.

## Safety and Accessibility

Built-in AI safety filters remove hidden text, off-page content, and suspicious invisible layers that could carry prompt injection, and an optional sanitize flag replaces emails, URLs, and phone numbers with placeholders. For accessibility, an auto-tagging pipeline turns untagged PDFs into Tagged PDFs, following the PDF Association's Well-Tagged PDF specification and validated with veraPDF. The project says it was developed with Dual Lab. PDF/UA export and a visual accessibility editor are listed as enterprise add-ons available on request.

## Setup Path

Install with `pip install opendataloader-pdf` (Java 11+ is required), call `convert()` on a batch of files, and pick output formats such as markdown, json, html, or tagged-pdf. A LangChain document loader is available as a separate package.

## Features
- PDF to Markdown, JSON, HTML, and text output
- Bounding boxes for every element
- XY-Cut++ reading order for multi-column layouts
- Table extraction including merged cells
- Hybrid mode with AI backend for complex tables
- OCR for scanned PDFs in 80+ languages
- LaTeX formula extraction
- AI chart and image descriptions
- Heading hierarchy inference
- Header, footer, and watermark filtering
- Prompt injection filtering and sanitization
- Tagged PDF structure extraction
- Auto-tagging untagged PDFs to Tagged PDF
- Annotated PDF visualization
- Python, Node.js, and Java SDKs
- CLI

## Integrations
LangChain, Docling, EasyOCR, RapidOCR, Tesseract, Apple Vision, veraPDF

## Platforms
WINDOWS, MACOS, LINUX, API, DEVELOPER_SDK, CLI

## Pricing
Open Source

## Version
v2.5.13

## Links
- Website: https://opendataloader.org
- Documentation: https://opendataloader.org/docs
- Repository: https://github.com/opendataloader-project/opendataloader-pdf
- EveryDev.ai: https://www.everydev.ai/tools/opendataloader-pdf
