v1.25.1

msitarzewski/agency-agentsv1.25.1Sep 28, 2026by abimaelmartell

Upgrading?

AI Summary

This release fixes critical font decoding issues, specifically addressing how simple fonts read ToUnicode CMaps and Type1 fonts handle encodings and ligatures.

Key Highlights

  • Fixes reading of two-byte strings in simple fonts (prevents text corruption).
  • Fixes reading Type1 fonts using base encodings (restores ligatures).
  • Fixes repaired ToUnicode CMaps for short strings.

New Features

  • One-byte per code reading for simple fonts with two-byte CMap declarations.
  • Base encoding fallback for Type1 fonts.
  • Stricter evidence threshold for repaired CMaps.

Full Release Notes

Changes since 1.25.0:

- Read simple fonts (Type1, TrueType, Type3) one byte per code when their ToUnicode CMap declares a two-byte codespace: text shown as a kerned run of short strings no longer loses every two-byte string (`Income Statement` read as `Iometatent`). The stale-CMap check for Type1 fonts judges such a CMap too, and the page detector counts such a font's text byte by byte (#595).
- Read a Type1 font whose `/Encoding` names no base encoding through the built-in encoding of its embedded program (PDF 32000-1:2008, Table 114): TeX's fonts read their ligatures (`efficiency`, was `eciency`), curly quotes, dashes and math symbols. A code the program leaves at `.notdef` reads as nothing, the word space excepted, and the base-14 width fallback measures such fonts as they read (#596).
- Take a repaired ToUnicode CMap for a string of one or two glyphs only on evidence beyond short common words: `engagement` no longer reads as `engageaent`, `AND` as `ANa` or `Three` as `ThaTe` (#597).

No API changes.

Release preparation: #604.

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

Related Repositories