Skip to content

v0.2.4 | CTM Fix & Formula Rendering

Choose a tag to compare

@yfedoseev yfedoseev released this 10 Jan 03:48
4e768f1

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 FormulaRenderer module)
    • Extract formula regions as base64 images from rendered pages
  • ConversionOptions Extensions
    • render_formulas - Enable formula image extraction
    • page_images - Include page screenshots
    • page_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_oxide

Python (PyPI)

pip install pdf_oxide

Release Date: January 9, 2026
Branch: main
Tag: v0.2.4
Closes: #11