diff options
author | Adrian Johnson <ajohnson@redneon.com> | 2010-01-25 20:48:02 +1030 |
---|---|---|
committer | Adrian Johnson <ajohnson@redneon.com> | 2010-01-25 20:48:02 +1030 |
commit | 180aea76adbb6d5c5909652b7a8cafb7a693e982 (patch) | |
tree | bea35982286d33f9438af36245b146486c590af5 /src/cairo-type3-glyph-surface.c | |
parent | abcb9d2c39178620b1847fe6ea6e144602464ecc (diff) | |
download | cairo-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.c | 9 |
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; |