v1.24.0
ChatbotXIO/ChatbotXv1.24.0Sep 23, 2026by abimaelmartell
Upgrading?
Release notes summary
This release adds text paint reporting and richer document information extraction, including author, subject, keywords, creator, producer, and date fields. It also improves title decoding, quote-operator text extraction, and line grouping for small type.
Key Highlights
- TextItem gains fill_color, stroke_color, and render_mode fields for reporting text paint and rendering mode.
- Document information dictionary fields such as author, subject, keywords, creator, producer, creation date, and modification date are now read.
- Document titles are decoded as PDF text strings, fixing PDFDocEncoding, UTF-16LE, and referenced-title issues.
- Text shown with the quote operator is now extracted.
- Small-type lines with baselines less than 5 pt apart are kept separate to avoid zipped table headers.
Breaking Changes
- Rust literals of TextItem, PdfProcessResult, and PdfTypeResult must include the newly added fields.
New Features
- TextItem fill_color, stroke_color, and render_mode fields
- Document information dictionary extraction for author, subject, keywords, creator, producer, creation_date, and mod_date
- PDF text string decoding for document titles
- Text extraction for the quote operator
Full Release Notes
Changes since 1.23.0: - Report the paint each text run was shown with: `TextItem` gains `fill_color` and `stroke_color` (8-bit sRGB, read from DeviceRGB, DeviceGray, DeviceCMYK, ICCBased by component count and Indexed palettes; `None` for Separation, DeviceN, Pattern and CIE-based spaces) and `render_mode` (the `Tr` mode, so invisible text and clipping-only text can be told apart). Extraction and markdown are unchanged (#579). - Read the document information dictionary's `/Author`, `/Subject`, `/Keywords`, `/Creator`, `/Producer`, `/CreationDate` and `/ModDate` beside `/Title`, each decoded as a PDF text string (#579). - Decode the document `/Title` as a PDF text string: titles in PDFDocEncoding no longer read with U+FFFD, titles in UTF-16LE no longer read as mojibake, and titles given by reference are read (#579). - Extract text a page shows with the `"` operator, which the page parser skipped together with the spacing and line move it makes (#579). - Take an ActualText span's weight from the paint of its first painted glyph rather than from the paint in force at the span's end (#579). - Keep two lines of small type apart when their baselines lie less than 5 pt apart: a stacked table header at 4.7 pt on a 4.5 pt pitch no longer comes out as words zipped from both lines, and type of 8⅓ pt and above groups exactly as before (#580). API: `TextItem::fill_color`, `stroke_color` and `render_mode` (Node `fillColor`, `strokeColor`, `renderMode`; Python `fill_color`, `stroke_color`, `render_mode`; the `pdf2md --items-json` fields), and the `PdfProcessResult` / `PdfTypeResult` fields `author`, `subject`, `keywords`, `creator`, `producer`, `creation_date` and `mod_date` (Node and WebAssembly in camelCase, Python as attributes, and the `pdf2md --json` / `detect-pdf --json` members). Rust literals of these types must include the new fields. Release preparation: #582. [Full changelog](https://github.com/firecrawl/pdf-inspector/compare/v1.23.0...v1.24.0)
Related Repositories
openclaw/openclaw★ 392,872
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
morluto/rea★ 372,421
Reverse engineer anything with agents, from app behavior down to native binaries.
nilbuild/developer-roadmap★ 370,228
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
anomalyco/opencode★ 220,560
The open source coding agent.
n8n-io/n8n★ 208,398
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.