Skip to content

alexandregz/ocrmypdf_portable_windows

Repository files navigation

OCRmyPDF Portable — Windows (onedir)

Este proxecto crea unha versión portable de OCRmyPDF para Windows, empaquetada con PyInstaller (onedir).

O resultado é un cartafol dist/OCRmyPDFPortable/ que contén un executábel (OCRmyPDFPortable.exe) listo para usar nun equipo Windows sen Python instalado.


📂 Estrutura do proxecto

ocrmypdf-portable-windows-onedir/
├─ launcher.py
├─ sitecustomize.py
├─ build.spec
├─ build.bat
├─ requirements.txt
├─ README.md
├─ vendors/
│  ├─ tesseract/
│  │  ├─ tesseract.exe
│  │  └─ tessdata/
│  │     ├─ eng.traineddata
│  │     ├─ spa.traineddata
│  │     ├─ glg.traineddata
│  │     ├─ configs/
│  │     │  ├─ hocr
│  │     │  └─ txt
│  │     └─ tessconfigs/...
│  ├─ ghostscript/
│  │  ├─ bin/gswin64c.exe
│  │  ├─ lib/...
│  │  ├─ Resource/...
│  │  └─ iccprofiles/...
│  ├─ pngquant/
│  │  └─ pngquant.exe
│  ├─ jbig2enc/
│  │  └─ jbig2.exe
│  └─ qpdf/
│     ├─ qpdf.exe
│     └─ (DLLs necesarias)

🔧 Ferramentas incluídas en vendors/

  • Tesseract OCR (tesseract.exe + tessdata/)
  • Ghostscript (gswin64c.exe + DLLs)
  • pngquant (para optimización de imaxes)
  • jbig2enc (compilado en Windows, require toolchain + libpng/libtiff/libjpeg/libz/libiconv)
  • QPDF (binario oficial portable ZIP de GitHub, contén qpdf.exe + DLLs)

🖥️ Requisitos no equipo de desenvolvemento

  • Windows 10/11 (64-bit)
  • Python 3.10–3.12 (64-bit)
  • pip, venv
  • PyInstaller
  • MSYS2/MinGW64 (só se queres recompilar jbig2enc)

🚀 Preparar o proxecto

  1. Clona ou copia este proxecto a un cartafol de traballo.

  2. Crea e activa un entorno virtual:

    py -3.12 -m venv venv
    .\venv\Scripts\activate
    python -m pip install -U pip
    python -m pip install -r requirements.txt
  3. Executa os scripts de descarga para dependencias:

    .\download_tesseract.ps1
    .\download_ghostscript.ps1
    .\download_pngquant.ps1
    .\download_qpdf.ps1

    (se xa tes jbig2enc.exe compilado, cópiao a vendors/jbig2enc/).


🏗️ Construír (PyInstaller — onedir)

No entorno activado:

pyinstaller --clean build.spec

Isto creará dist/OCRmyPDFPortable/.


▶️ Probar no equipo destino

Copia dist/OCRmyPDFPortable/ a un Windows sen Python. Executa:

cd dist\OCRmyPDFPortable
launcher.exe input.pdf output.pdf --language eng+spa --optimize 3

📌 Notas

  • Se tesseract ou qpdf non se atopan, comproba que existen en vendors/.
  • Para optimización avanzada precisas pngquant e (opcional) jbig2enc.
  • O sitecustomize.py está configurado para evitar erros con imaxes JPEG truncadas.

📜 Licenzas

  • OCRmyPDF: MPL-2.0
  • Tesseract OCR: Apache 2.0
  • Ghostscript: AGPL
  • pngquant: GPL v3
  • jbig2enc: GPL v2
  • QPDF: Apache 2.0

About

ocrmypdf portable para windows, para autoconter en pdf_merger_pdf_a_ocr_200

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors