vcl/unx/generic/gdi/cairotextrender.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
New commits: commit 84f644eee78106f01486098d446d9163b62927eb Author: Khaled Hosny <khaledho...@eglug.org> Date: Wed Nov 16 01:05:35 2016 +0200 tdf#103784: Shift the upright glyphs like old code It turns out we actually need the horizontal shift, so re-enable it. Change-Id: If9d16276f0f56b518c6bedc2fcbbd3d8746d8d5d diff --git a/vcl/unx/generic/gdi/cairotextrender.cxx b/vcl/unx/generic/gdi/cairotextrender.cxx index fbac5f3..974b584 100644 --- a/vcl/unx/generic/gdi/cairotextrender.cxx +++ b/vcl/unx/generic/gdi/cairotextrender.cxx @@ -334,8 +334,8 @@ void CairoTextRender::DrawServerFontLayout( const GenericSalLayout& rLayout, con else { ydiff = font_extents.ascent/nHeight; - xdiff = -font_extents.descent/nHeight; } + xdiff = -font_extents.descent/nHeight; } else if (nGlyphRotation == -1) { commit 26ac0e16f8f2c4d4b0d3a0cd147cef31240f688d Author: Khaled Hosny <khaledho...@eglug.org> Date: Tue Nov 15 23:36:57 2016 +0200 Fix thinko in previous commit Negative descender means the glyph is above the baseline and no shift should happen. Change-Id: I0ee3575051e47f16c64db4e85c0b8a390029567f diff --git a/vcl/unx/generic/gdi/cairotextrender.cxx b/vcl/unx/generic/gdi/cairotextrender.cxx index 574f985..fbac5f3 100644 --- a/vcl/unx/generic/gdi/cairotextrender.cxx +++ b/vcl/unx/generic/gdi/cairotextrender.cxx @@ -328,7 +328,8 @@ void CairoTextRender::DrawServerFontLayout( const GenericSalLayout& rLayout, con // the glyphâs baseline. cairo_text_extents_t aExt; cairo_glyph_extents(cr, &cairo_glyphs[nStartIndex], nLen, &aExt); - cairo_glyphs[nStartIndex].y += aExt.x_advance - aExt.height - aExt.y_bearing; + double nDescender = std::fmax(aExt.height + aExt.y_bearing, 0); + ydiff = (aExt.x_advance - nDescender) / nHeight; } else {
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits