diff options
author | Matthias Clasen <mclasen@redhat.com> | 2019-07-14 00:35:14 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2019-07-14 00:35:14 -0400 |
commit | 80f88de79f962730455354a5f6dcc9eea4245277 (patch) | |
tree | eb5353a2811b8a4280959e9ee5a3eddcfd46ab60 | |
parent | 33304e0da01f4a7793ef84276622833169d211e5 (diff) | |
download | pango-text-transform.tar.gz |
pango-viewer: Use layout text transformtext-transform
-rw-r--r-- | utils/viewer-render.c | 37 |
1 files changed, 5 insertions, 32 deletions
diff --git a/utils/viewer-render.c b/utils/viewer-render.c index 60a212e7..b2ab3f41 100644 --- a/utils/viewer-render.c +++ b/utils/viewer-render.c @@ -112,43 +112,16 @@ make_layout(PangoContext *context, static PangoFontDescription *font_description; PangoAlignment align; PangoLayout *layout; - char *transformed_text; - PangoAttrList *transformed_attrs; PangoTextTransform transform = transform_from_string (opt_text_transform); - char *txt; - PangoAttrList *attrs; - - if (opt_markup) - { - GError *error = NULL; - if (!pango_parse_markup (text, -1, 0, &attrs, &txt, NULL, &error)) - { - g_error ("Failed to parse markup: %s", error->message); - exit (1); - } - } - else - { - txt = g_strdup (text); - attrs = NULL; - } - - pango_transform_text (txt, -1, attrs, transform, NULL, &transformed_text, &transformed_attrs); - - g_free (txt); - if (attrs) - pango_attr_list_unref (attrs); layout = pango_layout_new (context); - pango_layout_set_text (layout, transformed_text, -1); - g_free (transformed_text); + if (opt_markup) + pango_layout_set_markup (layout, text, -1); + else + pango_layout_set_text (layout, text, -1); - if (transformed_attrs) - { - pango_layout_set_attributes (layout, transformed_attrs); - pango_attr_list_unref (transformed_attrs); - } + pango_layout_set_text_transform (layout, transform); pango_layout_set_auto_dir (layout, opt_auto_dir); pango_layout_set_ellipsize (layout, opt_ellipsize); |