Skip to content

bug: dropped glyphs in rendered pages are invisible to xberg because pdf_oxide swallows outline failures silently #1364

Description

@tobocop2

What happens

Rendered pages can silently lose glyphs and xberg has no way to notice. pdf_oxide's rasterizer swallows failed glyphs with no log and no fallback while still advancing the cursor: a None outline paints nothing, unmapped chars resolve to GID 0 and are skipped, and chars decoding to U+FFFD are dropped from shaping entirely. Pages come out gap-filled, OCR transcribes the gaps faithfully, and nothing in the extraction result flags it. #1362 is one instance of the class; the same sink hides any other outline or encoding failure.

Where it comes from

Filed upstream with the four verified swallow points: yfedoseev/pdf_oxide#991.

Blocked on

yfedoseev/pdf_oxide#991. Once pdf_oxide emits a per-font warn (or any structured signal) on dropped glyphs, xberg can surface it: at minimum forward the warning, ideally attach a per-page quality flag on the OCR path so downstream consumers can quarantine affected pages instead of indexing gap-filled text.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

Status
Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions