diff options
author | Matthias Clasen <mclasen@redhat.com> | 2021-09-11 12:30:46 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2022-01-02 13:33:37 -0500 |
commit | 492df836ade5056e73f4779593ce31598ed77d85 (patch) | |
tree | a22e6c13b3b1c14568c306443323d51b63400231 /tests | |
parent | fc46f12754e9035c71da2747be55361ddfcf7635 (diff) | |
download | pango-492df836ade5056e73f4779593ce31598ed77d85.tar.gz |
Add pango_matrix_get_slant_ratio
Add API to extract the slant ratio from a PangoMatrix.
Tests included.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testmatrix.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/testmatrix.c b/tests/testmatrix.c index 607f2b5f..1ba79839 100644 --- a/tests/testmatrix.c +++ b/tests/testmatrix.c @@ -21,6 +21,7 @@ #include <glib.h> #include <pango/pango.h> +#include <math.h> #define matrix_equal(m1, m2) \ (G_APPROX_VALUE ((m1)->xx, (m2)->xx, 0.0001) && \ @@ -185,6 +186,30 @@ test_matrix_transform_pixel_rect (void) g_assert_cmpfloat_with_epsilon (rect.height, 2, 0.1); } +static void +test_matrix_slant_ratio (void) +{ + PangoMatrix m = (PangoMatrix) { 1, 0, 0.2, 1, 0, 0 }; + PangoMatrix m2 = (PangoMatrix) { 1, 0.4, 0, 1, 0, 0 }; + double r; + + r = pango_matrix_get_slant_ratio (&m); + g_assert_cmphex (r, ==, 0.2); + + pango_matrix_rotate (&m, 45); + + r = pango_matrix_get_slant_ratio (&m); + g_assert_cmphex (r, ==, 0.2); + + pango_matrix_scale (&m, 2, 3); + + r = pango_matrix_get_slant_ratio (&m); + g_assert_cmphex (r, ==, 0.2); + + r = pango_matrix_get_slant_ratio (&m2); + g_assert_cmphex (r, ==, 0.4); +} + int main (int argc, char *argv[]) { @@ -199,6 +224,7 @@ main (int argc, char *argv[]) g_test_add_func ("/matrix/transform-distance", test_matrix_transform_distance); g_test_add_func ("/matrix/transform-rect", test_matrix_transform_rect); g_test_add_func ("/matrix/transform-pixel-rect", test_matrix_transform_pixel_rect); + g_test_add_func ("/matrix/slant-ratio", test_matrix_slant_ratio); return g_test_run (); } |