[pango: 1/2] Translate origin point for vertical layout
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pango: 1/2] Translate origin point for vertical layout
- Date: Thu, 21 Jan 2021 22:53:30 +0000 (UTC)
commit 4c6f0b3c0e03731ef4e44cda5ab42c768dc761a2
Author: Peng Wu <pwu redhat com>
Date: Tue Jan 14 16:15:17 2020 +0800
Translate origin point for vertical layout
The origin point for vertical layout needs to be translated
for cairo rendering from the horizontal origin to the vertical origin.
pango/pangofc-shape.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
---
diff --git a/pango/pangofc-shape.c b/pango/pangofc-shape.c
index b6f74ca1..16d5d84d 100644
--- a/pango/pangofc-shape.c
+++ b/pango/pangofc-shape.c
@@ -409,9 +409,12 @@ pango_hb_shape (PangoFont *font,
for (i = 0; i < num_glyphs; i++)
{
/* 90 degrees rotation counter-clockwise. */
- infos[i].geometry.width = hb_position->y_advance;
- infos[i].geometry.x_offset = hb_position->y_offset;
- infos[i].geometry.y_offset = - hb_position->x_offset;
+ hb_position_t x_origin = 0, y_origin = 0;
+ hb_font_get_glyph_v_origin
+ (hb_font, infos[i].glyph, &x_origin, &y_origin);
+ infos[i].geometry.width = - hb_position->y_advance;
+ infos[i].geometry.x_offset = - hb_position->y_offset - y_origin;
+ infos[i].geometry.y_offset = - hb_position->x_offset - x_origin;
hb_position++;
}
else /* horizontal */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]