Index: plug-ins/cairo/diacairo-renderer.c
===================================================================
--- plug-ins/cairo/diacairo-renderer.c	(revision 4083)
+++ plug-ins/cairo/diacairo-renderer.c	(working copy)
@@ -124,6 +124,12 @@
 #ifdef HAVE_PANGOCAIRO_H
   if (!renderer->layout)
     renderer->layout = pango_cairo_create_layout (renderer->cr);
+# ifndef G_OS_WIN32
+  /* this sucks but apparently is necessary to compensate for the freetype mess done in lib/font.c 
+   * otherwise we will get another font size mismatch */
+  pango_cairo_context_set_resolution (pango_layout_get_context (renderer->layout), 75.);
+  pango_cairo_update_context (renderer->cr, pango_layout_get_context (renderer->layout));
+#  endif
 #endif
 
   DIAG_STATE(renderer->cr)
Index: plug-ins/cairo/diacairo-interactive.c
===================================================================
--- plug-ins/cairo/diacairo-interactive.c	(revision 4083)
+++ plug-ins/cairo/diacairo-interactive.c	(working copy)
@@ -219,6 +219,12 @@
 
 #ifdef HAVE_PANGOCAIRO_H
   base_renderer->layout = pango_cairo_create_layout (base_renderer->cr);
+# ifndef G_OS_WIN32
+  /* this sucks but apparently is necessary to compensate for the freetype mess done in lib/font.c 
+   * otherwise we will get another font size mismatch */
+  pango_cairo_context_set_resolution (pango_layout_get_context (base_renderer->layout), 75.);
+  pango_cairo_update_context (base_renderer->cr, pango_layout_get_context (base_renderer->layout));
+#  endif
 #endif
 
 #if 0
