OCR-first recovery pipeline for legacy Ethiopic PDFs with broken text maps, broken embedded font encodings, and unreliable copy/paste extraction.
# AxumParser
OCR-first recovery pipeline for legacy Ethiopic PDFs with broken text maps, broken
embedded font encodings, and unreliable copy/paste extraction.
## Table of Contents
- About The Project
- Why This Project Matters
- Built With
- Getting Started
- Prerequisites
- Installation
- Usage
- 1. Inspect a Document
- 2. Run the Pipeline
- 3. Fill the OCR Files
- 4. Import OCR Back Into AxumParser
- 5. Review Coverage and Remaining Gaps
- Artifact Layout
- Roadmap
- Documentation
## About The Project
AxumParser exists to recover text from PDF documents that still look readable to a
human, but are effectively broken to software.
These PDFs often contain embedded legacy fonts whose internal character maps are
missing, incorrect, or private. The result is a frustrating pattern:
- the page renders correctly on screen
- copy and paste produces garbage
- different PDF libraries disagree with each other
- Unicode extraction cannot be trusted
- manual recovery becomes slow, inconsistent, and difficult to audit
AxumParser is designed to solve that exact problem in a disciplined way.
Instead of pretending the PDF is well-formed, AxumParser assumes the document may be
in a bad state from the start. It extracts what can be learned from the PDF, prepares
document-scoped artifacts under `output/`, uses OCR as the trusted baseline, and only
promotes reusable knowledge after evidence has been reviewed.
This is especially important for older Ethiopic and Ge'ez documents where broken
ToUnicode maps, broken CMaps, and custom embedded fonts can make a document visually
usable but computationally unreadable.
## Why This Project Matters
Outdated PDFs with broken text maps are not just inconvenient; they are a preservation
problem.
When a liturgical, historical, or ecclesiastical text exists only in a visually
renderable but machine-broken PDF:
- search does not work
- extraction does not work
- translation pipelines break
- downstream NLP becomes unusable
- future reform …