Kaydet (Commit) 95372ec1 authored tarafından Caolán McNamara's avatar Caolán McNamara Kaydeden (comit) Eike Rathke

Resolves: fdo#44856 skew artificial fonts before glyph or layout rotation

(cherry picked from commit 8f23e981)
Signed-off-by: 's avatarEike Rathke <erack@redhat.com>
üst be423cf8
......@@ -415,9 +415,6 @@ void X11SalGraphics::DrawServerFontLayout( const ServerFontLayout& rLayout )
cairo_matrix_init_identity(&m);
if (rFont.NeedsArtificialItalic())
m.xy = -m.xx * 0x6000L / 0x10000L;
if (rLayout.GetOrientation())
cairo_matrix_rotate(&m, toRadian(rLayout.GetOrientation()));
......@@ -464,6 +461,14 @@ void X11SalGraphics::DrawServerFontLayout( const ServerFontLayout& rLayout )
cairo_matrix_translate(&m, xdiff, ydiff);
}
if (rFont.NeedsArtificialItalic())
{
cairo_matrix_t shear;
cairo_matrix_init_identity(&shear);
shear.xy = -shear.xx * 0x6000L / 0x10000L;
cairo_matrix_multiply(&m, &shear, &m);
}
cairo_set_font_matrix(cr, &m);
cairo_show_glyphs(cr, &cairo_glyphs[nStartIndex], nLen);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment