TrulyFreeOCR

Business-friendly open-source OCR pipeline that turns scanned PDFs and images into fully searchable, MRC-compressed PDFs — no Python, no Ghostscript, no cloud.

GitHub stars License
Get Started View on GitHub →

One command from scan to searchable PDF

# Clone, bootstrap, run — no admin rights needed
git clone https://github.com/msmarkgu/TrulyFreeOCR.git
cd TrulyFreeOCR
./bootstrap.sh
./run.sh scan.pdf -o output.pdf
✓ OCR complete
✓ MRC compressed: 1.9 MB → 474 KB
✓ Searchable PDF output

Why TrulyFreeOCR

Self-contained Single fat JAR + bootstrap.sh. All deps (JDK, Gradle, Tesseract, jbig2enc) install locally. No sudo, no Python, no Docker.
MRC Compression JBIG2/CCITT foreground mask + JPEG/PNG background. 5–10× smaller than JPEG-only, with razor-sharp text.
Searchable PDF/A Invisible OCR text layer over compressed pages. Optional PDF/A-2b for archiving.
Apache 2.0 License No disclosure obligations. All runtime deps use permissive licenses — no GPL/AGPL in the stack.
Fully Offline CPU-only. Zero data leaves your machine. No cloud API calls, no GPU required.
Java 21 Native Pure Java pipeline. Embeddable in any Maven/Gradle project. No JNA/Tess4J version mismatches.

Input & Output

Input: Any PDF or image (PNG/JPEG/TIFF/BMP/GIF)
Output: Fully searchable, MRC-compressed PDF (Mixed Raster Content)

See Full Documentation on GitHub