[pango/simple-fontmap: 6/6] Fix glyph extents to look right
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pango/simple-fontmap: 6/6] Fix glyph extents to look right
- Date: Sat, 23 Oct 2021 18:14:38 +0000 (UTC)
commit b160ae76ef302fdae66d4fa3afe49af81920e871
Author: Matthias Clasen <mclasen redhat com>
Date: Thu Oct 21 13:54:19 2021 -0500
Fix glyph extents to look right
This is done purely by visual inspection.
Not clear to me why this is necessary.
To test this, I've used
pango-view --font-file /usr/share/fonts/cantarell/Cantarell-VF.otf \
--font="Cantarell 64" \
--gravity=east --gravity-hint=strong --rotate=-90 \
--text "Vertical" \
--annotate=glyph
Remove the --font-file argument to see the rendering
with the current code.
pango/pango-hbfont.c | 5 +++++
1 file changed, 5 insertions(+)
---
diff --git a/pango/pango-hbfont.c b/pango/pango-hbfont.c
index 67abfa51..cd44b747 100644
--- a/pango/pango-hbfont.c
+++ b/pango/pango-hbfont.c
@@ -214,10 +214,15 @@ pango_hb_font_get_glyph_extents (PangoFont *font,
if (ink_rect)
{
+ PangoMatrix matrix = PANGO_MATRIX_INIT;
+
ink_rect->x = extents.x_bearing;
ink_rect->width = extents.width;
ink_rect->y = - extents.y_bearing;
ink_rect->height = - extents.height;
+
+ pango_matrix_rotate (&matrix, - pango_gravity_to_rotation (PANGO_HB_FONT (font)->gravity) * 180. /
G_PI);
+ pango_matrix_transform_rectangle (&matrix, ink_rect);
}
if (logical_rect)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]