From ec4106fc78ff97114e454e26c9d61349019b535e Mon Sep 17 00:00:00 2001 From: "Dylan M. Taylor" Date: Sun, 8 Nov 2026 11:26:46 -0500 Subject: [PATCH] review: test a Type 3 glyph's transformed box on its own --- crates/redact/src/interp.rs | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/crates/redact/src/interp.rs b/crates/redact/src/interp.rs index ce2f608b40..490dae72ec 100644 --- a/crates/redact/src/interp.rs +++ b/crates/redact/src/interp.rs @@ -697,11 +697,10 @@ fn show(scope: &Scope<'_>, gs: &Gs, tm: &mut Matrix, items: &[Object]) -> (Vec, gs: &Gs, tm: &mut Matrix, items: &[Object]) -> (Vec scope.glyph_hit(b, origin) || scope.glyph_hit(metrics, origin), + None => { + scope.glyph_hit(b, origin) + || scope.glyph_hit(metrics, origin) + // On its own: the union box's overlap threshold is set by the larger + // metrics box, which can hide a mark over a narrow glyph. + || type3.is_some_and(|p| scope.glyph_hit(p, origin)) + } }; glyphs.push(Glyph { bytes: pos..pos + len, advance, hit }); *tm = Matrix::translate(advance * gs.scale, 0.0).then(tm);