v1.25.1

qdm12/gluetun-serversv1.25.1Sep 28, 2026by abimaelmartell

Upgrading?

AI Summary

This release addresses font decoding errors by improving how Type1, TrueType, and Type3 fonts are read, particularly handling ToUnicode CMaps and base encodings to prevent text corruption.

Key Highlights

  • Fixes reading simple fonts with two-byte codes to prevent strings like 'Income Statement' from being corrupted.
  • Reads Type1 fonts with `/Encoding` names through the embedded program's built-in encoding.
  • Prevents over-aggressive repair of ToUnicode CMaps for short common words.

New Features

  • Font decoding improvements for Type1, TrueType, and Type3 fonts.
  • CMap repair logic adjustments for short words.

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