]> granicus.if.org Git - graphviz/commitdiff
Turn on anti-aliased fonts in cairo
authorerg <devnull@localhost>
Fri, 9 Nov 2007 23:31:43 +0000 (23:31 +0000)
committererg <devnull@localhost>
Fri, 9 Nov 2007 23:31:43 +0000 (23:31 +0000)
plugin/pango/gvtextlayout_pango.c

index b89da5771eb1a1c1e108a1659015b463ac093b4f..899aa1902a0c2139d29a588fbfd0032c9c169593 100644 (file)
@@ -48,6 +48,7 @@ static boolean pango_textlayout(textpara_t * para, char **fontpath)
     PangoLayout *layout;
     PangoRectangle logical_rect;
     PangoLayoutIter* iter;
+       cairo_font_options_t* options;
 /* #define ENABLE_PANGO_XSHOW */
 #ifdef ENABLE_PANGO_XSHOW
     PangoRectangle char_rect;
@@ -63,6 +64,13 @@ static boolean pango_textlayout(textpara_t * para, char **fontpath)
     if (!context) {
        fontmap = pango_cairo_font_map_get_default();
        context = pango_cairo_font_map_create_context (PANGO_CAIRO_FONT_MAP(fontmap));
+       options=cairo_font_options_create();
+       cairo_font_options_set_antialias(options,CAIRO_ANTIALIAS_GRAY);
+       cairo_font_options_set_hint_style(options,CAIRO_HINT_STYLE_FULL);
+       cairo_font_options_set_hint_metrics(options,CAIRO_HINT_METRICS_ON);
+       cairo_font_options_set_subpixel_order(options,CAIRO_SUBPIXEL_ORDER_BGR);
+       pango_cairo_context_set_font_options(context, options);
+
        g_object_unref(fontmap);
     }