v0.2.4 Release
This release fixes a critical text positioning bug and adds formula extraction capabilities.
🐛 Bug Fixes
- CTM (Current Transformation Matrix) handling - Issue #11
- CTM now correctly applied to text positions per PDF Spec Section 9.4.4
- This fix affects text positioning across the entire library
- Critical for production use with complex PDFs
✨ New Features
- Structure Tree Enhancements
/Alt(alternate description) parsing for accessibility text/Pg(page reference) resolution - correctly maps structure elements to page numbers
- Formula Rendering (via
FormulaRenderermodule)- Extract formula regions as base64 images from rendered pages
- ConversionOptions Extensions
render_formulas- Enable formula image extractionpage_images- Include page screenshotspage_dimensions- Track page dimensions
🏆 Community Contributors
🐛➡️✅ @mert-kurttutan - Detailed bug report (#11) with reproducible sample PDF! Your report exposed a fundamental CTM transformation bug affecting text positioning across the entire library. This fix was critical for production use. 🎉
✅ Verification
- All text extraction tests pass
- CTM transformation validated on complex PDFs
- Formula rendering tested
- Regression tests added
📥 Installation
Rust (crates.io)
cargo add pdf_oxidePython (PyPI)
pip install pdf_oxideRelease Date: January 9, 2026
Branch: main
Tag: v0.2.4
Closes: #11