v1.21.0

AIPentest/CyberStrikeAIv1.21.0Sep 19, 2026by abimaelmartell

Upgrading?

AI Summary

Version 1.21.0 adds font weight metadata, fixes clipped text extraction, and improves PDF loading tolerance by locating the header within the first 1024 bytes.

Key Highlights

  • Font Weight: Adds font_weight to text items.
  • Clipped Text: Excludes text wholly outside clip rect.
  • Loading Tolerance: Locates %PDF- header within first 1024 bytes.

Breaking Changes

  • Rust migration required for TextItem literals to include new field font_weight: None

New Features

  • font_weight field in text items
  • Clipped text exclusion
  • Improved PDF header detection

Full Release Notes

Changes since 1.20.0:

- Add `font_weight`, the font's 100..=900 weight class, to text items in Rust, Node, Python and `pdf2md --items-json`, with an opt-in `bold_from_weight` on the positioned-text and region APIs that reads bold from a weight of 600 or more and keeps runs of different weight as separate items (#536).
- Leave out text painted wholly outside its rectangular clip, so off-canvas labels no longer leak into the surrounding text (#539).
- Tolerate leading bytes before the `%PDF-` header, locating it within the first 1024 bytes as mupdf, pdfium and poppler do (#538).

`bold_from_weight` is opt-in; `is_bold` and item merging are unchanged by default.

**Rust migration:** `TextItem` literals need `font_weight: None` for items whose weight class is unknown.

Release preparation: #546.

[Full changelog](https://github.com/firecrawl/pdf-inspector/compare/v1.20.0...v1.21.0)

Related Repositories