diff options
author | Matthias Clasen <mclasen@redhat.com> | 2021-11-26 14:34:21 +0000 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2021-11-26 14:34:21 +0000 |
commit | 84ff272ea04a3f2a142d89e583bda066428ac6f7 (patch) | |
tree | e021a13baac075c3685b39a41db1f25a762b8464 /tests | |
parent | f37d293b9cfcc43def6fe4be0483b898774e5a2f (diff) | |
parent | 8c51a367c7bcaf8c84f04ddee7651aedbfd8909b (diff) | |
download | pango-84ff272ea04a3f2a142d89e583bda066428ac6f7.tar.gz |
Merge branch 'hinted-metrics-fixes' into 'main'
Hinted metrics fixes
Closes #626
See merge request GNOME/pango!518
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testmisc.c | 38 |
1 files changed, 24 insertions, 14 deletions
diff --git a/tests/testmisc.c b/tests/testmisc.c index 555f0dce..1aa90948 100644 --- a/tests/testmisc.c +++ b/tests/testmisc.c @@ -634,9 +634,11 @@ test_empty_line_height (void) { PangoContext *context; PangoLayout *layout; + PangoFontDescription *description; PangoRectangle ext1, ext2, ext3; cairo_font_options_t *options; int hint; + int size; if (strcmp (G_OBJECT_TYPE_NAME (pango_cairo_font_map_get_default ()), "PangoCairoCoreTextFontMap") == 0) { @@ -645,33 +647,41 @@ test_empty_line_height (void) } context = pango_font_map_create_context (pango_cairo_font_map_get_default ()); + description = pango_font_description_new (); - for (hint = CAIRO_HINT_METRICS_OFF; hint <= CAIRO_HINT_METRICS_ON; hint++) + for (size = 10; size <= 20; size++) { - options = cairo_font_options_create (); - cairo_font_options_set_hint_metrics (options, hint); - pango_cairo_context_set_font_options (context, options); - cairo_font_options_destroy (options); + pango_font_description_set_size (description, size); - layout = pango_layout_new (context); + for (hint = CAIRO_HINT_METRICS_OFF; hint <= CAIRO_HINT_METRICS_ON; hint++) + { + options = cairo_font_options_create (); + cairo_font_options_set_hint_metrics (options, hint); + pango_cairo_context_set_font_options (context, options); + cairo_font_options_destroy (options); - pango_layout_get_extents (layout, NULL, &ext1); + layout = pango_layout_new (context); + pango_layout_set_font_description (layout, description); - pango_layout_set_text (layout, "a", 1); + pango_layout_get_extents (layout, NULL, &ext1); - pango_layout_get_extents (layout, NULL, &ext2); + pango_layout_set_text (layout, "a", 1); - g_assert_cmpint (ext1.height, ==, ext2.height); + pango_layout_get_extents (layout, NULL, &ext2); - pango_layout_set_text (layout, "Pg", 1); + g_assert_cmpint (ext1.height, ==, ext2.height); - pango_layout_get_extents (layout, NULL, &ext3); + pango_layout_set_text (layout, "Pg", 1); - g_assert_cmpint (ext2.height, ==, ext3.height); + pango_layout_get_extents (layout, NULL, &ext3); - g_object_unref (layout); + g_assert_cmpint (ext2.height, ==, ext3.height); + + g_object_unref (layout); + } } + pango_font_description_free (description); g_object_unref (context); } |