How christmardochee/pdf2word works
pdf2word converts PDFs into editable DOCX files through selectable conversion engines, with automatic document analysis and optional enhancement; it also offers DOCX-to-PDF reconversion and cloud-key management. The main conversion flow is supported by the orchestrator excerpt and README. Several engine implementations and routing details are unsampled, so their documented roles are shown without asserting additional internal call relationships.
Main entry points: converter.py Conversion orchestrator · cli.py CLI · cloud_converter.py Cloud conversion · ocr_converter.py OCR conversion
Components 24
User entry points
- CLI
pdf2word/cli.py - Python API
pdf2word/converter.py
Conversion routing
- Conversion orchestrator
pdf2word/converter.py - PDF analyzer
pdf2word/analyzer.py - DOCX enhancer
pdf2word/docx_enhancer.py
Conversion engines
- Smart conversion
pdf2word/smart_converter.py - Docling conversion
pdf2word/docling_converter.py - Cloud conversion
pdf2word/cloud_converter.py - MS Word conversion
pdf2word/msword_converter.py - LibreOffice conversion
pdf2word/libreoffice_converter.py - Text conversion
pdf2word/text_converter.py - OCR conversion
pdf2word/ocr_converter.py - Hybrid conversion
pdf2word/hybrid_converter.py - Combined conversion
pdf2word/combined_converter.py
Output and settings
- Output DOCX
- DOCX to PDF
pdf2word/docx_to_pdf.py - API key settings
pdf2word/config.py - Output PDF
Other components
- CLI user
- Python caller
- Input PDF
- ConvertAPI
- OCR engine
- Stored API key
Connections 31
- CLI user → CLI: runs commands
- Python caller → Python API: calls conversion
- CLI → Conversion orchestrator: starts conversion
- Python API → Conversion orchestrator: invokes conversion
- Conversion orchestrator → PDF analyzer: analyzes PDF
- Input PDF → PDF analyzer: reads PDF
- Conversion orchestrator → Smart conversion: routes conversion
- Conversion orchestrator → Docling conversion: routes conversion
- Conversion orchestrator → Cloud conversion: routes conversion
- Conversion orchestrator → MS Word conversion: routes conversion
- Conversion orchestrator → LibreOffice conversion: routes conversion
- Conversion orchestrator → Text conversion: routes conversion
- Conversion orchestrator → OCR conversion: routes conversion
- Conversion orchestrator → Hybrid conversion: routes conversion
- Conversion orchestrator → Combined conversion: routes conversion
- Conversion orchestrator → DOCX enhancer: post-processes DOCX
- Smart conversion → Output DOCX: produces DOCX
- Docling conversion → Output DOCX: produces DOCX
- Cloud conversion → ConvertAPI: uses conversion API
- Cloud conversion → Output DOCX: produces DOCX
- MS Word conversion → Output DOCX: produces DOCX
- LibreOffice conversion → Output DOCX: produces DOCX
- Text conversion → Output DOCX: produces DOCX
- OCR conversion → OCR engine: recognizes text
- OCR conversion → Output DOCX: produces DOCX
- Hybrid conversion → Output DOCX: produces DOCX
- Combined conversion → Output DOCX: produces DOCX
- CLI → DOCX to PDF: starts reconversion
- DOCX to PDF → Output PDF: produces PDF
- CLI → API key settings: manages key
- API key settings → Stored API key: stores key