summaryrefslogtreecommitdiff
path: root/src/cairo-type3-glyph-surface.c
diff options
context:
space:
mode:
authorAdrian Johnson <ajohnson@redneon.com>2010-01-25 20:48:02 +1030
committerAdrian Johnson <ajohnson@redneon.com>2010-01-25 20:48:02 +1030
commit180aea76adbb6d5c5909652b7a8cafb7a693e982 (patch)
treebea35982286d33f9438af36245b146486c590af5 /src/cairo-type3-glyph-surface.c
parentabcb9d2c39178620b1847fe6ea6e144602464ecc (diff)
downloadcairo-180aea76adbb6d5c5909652b7a8cafb7a693e982.tar.gz
Fix printing of rotated user fonts
b7550bf0 introduced a regression when user fonts are rendered to a rotated context.
Diffstat (limited to 'src/cairo-type3-glyph-surface.c')
-rw-r--r--src/cairo-type3-glyph-surface.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/cairo-type3-glyph-surface.c b/src/cairo-type3-glyph-surface.c
index 78e8b71c7..d9fee4fcf 100644
--- a/src/cairo-type3-glyph-surface.c
+++ b/src/cairo-type3-glyph-surface.c
@@ -291,17 +291,18 @@ _cairo_type3_glyph_surface_show_glyphs (void *abstract_surface,
cairo_type3_glyph_surface_t *surface = abstract_surface;
cairo_int_status_t status;
cairo_scaled_font_t *font;
- cairo_matrix_t new_scale, invert_y_axis;
+ cairo_matrix_t new_ctm, invert_y_axis;
status = _cairo_surface_clipper_set_clip (&surface->clipper, clip);
if (unlikely (status))
return status;
cairo_matrix_init_scale (&invert_y_axis, 1, -1);
- cairo_matrix_multiply (&new_scale, &scaled_font->scale, &invert_y_axis);
+ cairo_matrix_multiply (&new_ctm, &invert_y_axis, &scaled_font->ctm);
+ cairo_matrix_multiply (&new_ctm, &surface->cairo_to_pdf, &new_ctm);
font = cairo_scaled_font_create (scaled_font->font_face,
- &new_scale,
- &surface->cairo_to_pdf,
+ &scaled_font->font_matrix,
+ &new_ctm,
&scaled_font->options);
if (unlikely (font->status))
return font->status;