font resolution works!
[pspp] / src / output / cairo-fsm.h
index f89acbe5372a9e65557970c5bfa6da158a47efd7..37f4b8b40be32a9bd856b4e31d6705d3ccbc3b10 100644 (file)
@@ -43,15 +43,22 @@ struct xr_fsm_style
   {
     int ref_cnt;
 
-    int size[TABLE_N_AXES];     /* Page size. */
+    int size[TABLE_N_AXES];      /* Page size. */
     int min_break[TABLE_N_AXES]; /* Minimum cell size to allow breaking. */
     PangoFontDescription *fonts[XR_N_FONTS];
     struct cell_color fg;
     bool use_system_colors;
     bool transparent;
-    double font_scale;
+
+    /* Resolution, in units per inch, used for measuring font "points".  If
+       this is 72.0, for example, then 1pt = 1 device unit, which is
+       appropriate for rendering to a surface created by
+       cairo_ps_surface_create() with its default transformation matrix of 72
+       units/inch.  For a screen-based surface, it is traditionally 96.0. */
+    double font_resolution;
   };
 struct xr_fsm_style *xr_fsm_style_ref (const struct xr_fsm_style *);
+struct xr_fsm_style *xr_fsm_style_unshare (struct xr_fsm_style *);
 void xr_fsm_style_unref (struct xr_fsm_style *);
 bool xr_fsm_style_equals (const struct xr_fsm_style *,
                           const struct xr_fsm_style *);