Advanced PDF generation with Enhanced ReportLab Engine v3.0, comprehensive analysis tools, and professional document creation
Project description
๐ WOT-PDF - Advanced PDF Generation v1.1.0
Professional PDF generation with Enhanced ReportLab Engine v3.0 + Typst dual-engine architecture
๐ NEW in v1.1.0 - Enhanced ReportLab Engine v3.0
โ Major Improvements
- Fixed TOC Generation: Proper table of contents with hierarchical numbering
- Enhanced Emoji Support: Native Unicode with SegoeUIEmoji font registration
- Professional Styling: 6-level heading system with business-ready themes
- Performance Optimized: 32x faster than Typst for business documents (0.02s)
- Perfect Compatibility: All Canvas API issues resolved
๐ Quality Results
- File Size: Optimized 30KB output (2x larger but feature-rich)
- Features: Complete TOC + Hierarchical Numbering + Emoji Support
- Speed: Lightning-fast 0.02s generation time
- Quality: Business-ready professional output
โจ Core Features
๐ฏ Dual PDF Engines
- Enhanced ReportLab v3.0: Performance leader for business documents โก
- System Typst CLI: Quality leader for academic documents ๐จ
- Intelligent Routing: Automatic engine selection based on content
๐ Professional Document Generation
- Convert markdown to business-ready PDFs
- Complete table of contents with numbering
- Full emoji and Unicode support ๐๐๐
- 6-level professional heading system
- Rich CLI interface
- GUI frontend (optional)
- Professional typography
๐ Quick Start
Installation
pip install wot-pdf
Basic Usage
# Generate single PDF from file
wot-pdf generate --input document.md --output result.pdf --template technical
# Create professional book from directory
wot-pdf book ./docs/ book.pdf --template technical
# Analyze content for optimal engine selection
wot-pdf analyze document.md
# List available templates
wot-pdf templates
# Show detailed template information
wot-pdf template-info technical
# GUI mode (if installed)
wot-pdf-gui
Python API
from wot_pdf import PDFGenerator, generate_book
# Simple generation
generator = PDFGenerator()
result = generator.generate("document.md", "output.pdf")
# Book generation
result = generate_book(
input_dir="./docs/",
output_file="book.pdf",
template="technical"
)
๐ Templates
| Template | Best For | Features |
|---|---|---|
academic |
Research papers | Citations, bibliography, equations |
technical |
Documentation | Code blocks, diagrams, TOC |
corporate |
Business reports | Professional styling, charts |
educational |
Learning materials | Exercises, callouts, examples |
minimal |
Simple documents | Clean, fast generation |
๐ ๏ธ Installation Options
Minimal Installation
pip install wot-pdf
With Development Tools
pip install wot-pdf[dev]
With GUI Support
pip install wot-pdf[gui]
With Documentation Tools
pip install wot-pdf[docs]
๐ Requirements
- Python: 3.8+
- System Typst CLI (recommended): Install from typst.app
- ReportLab: Automatically installed (fallback engine)
๐ฏ Use Cases
โ Technical Documentation
- API references
- User manuals
- Installation guides
โ Academic Publishing
- Research papers
- Thesis documents
- Conference proceedings
โ Business Reports
- Quarterly reports
- Project documentation
- Presentation materials
โ Educational Content
- Course materials
- Tutorials
- Reference guides
๐ Comparison
| Feature | wot-pdf | pandoc | WeasyPrint |
|---|---|---|---|
| Typst Integration | โ | โ | โ |
| Fallback Engine | โ | โ | โ |
| Professional Templates | โ | Limited | Limited |
| Book Generation | โ | Manual | Manual |
| GUI Interface | โ | โ | โ |
| CLI Interface | โ | โ | Limited |
๐ง Configuration
Create .wot-pdf.yaml in your project:
default_template: technical
output_directory: ./generated/
typst:
enabled: true
timeout: 60
reportlab:
compression: true
embed_fonts: true
๐ค Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines.
๐ License
MIT License - see LICENSE file for details.
๐ Links
- ๐ Documentation
- ๐ Issues
- ๐ฌ Discussions
- ๐ Source Code
Made with โค๏ธ by the Work Organizing Tools team
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wot_pdf-1.2.0.tar.gz.
File metadata
- Download URL: wot_pdf-1.2.0.tar.gz
- Upload date:
- Size: 125.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb01403cb1243b8446403fc65dcbdce728345cc93de8917178e321a94d469c16
|
|
| MD5 |
aa81a38c6b59ec7b77623a769aacc664
|
|
| BLAKE2b-256 |
d4a28499c774b78b341b83f7ccdaebae683f20a631a8ceb9281574ea9e8b1694
|
File details
Details for the file wot_pdf-1.2.0-py3-none-any.whl.
File metadata
- Download URL: wot_pdf-1.2.0-py3-none-any.whl
- Upload date:
- Size: 146.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
21554600c5d95ca37ae436ab956cd283edb971b628de46b1d662332b45a6dc42
|
|
| MD5 |
7829f9f107350a1cc7259b978c64def8
|
|
| BLAKE2b-256 |
4a389cbbf0d2e0a437a78c918a80aba0f96e593dc3b2f415e385f643fa0a7e49
|