kbrown / rpms / libreoffice

Forked from rpms/libreoffice 2 years ago
Clone

Blame SOURCES/0046-bnc-881024-Handle-0-font-height-just-like-outdev-dra.patch

f085be
From 48242717e3a7a8d4c936bad0b96d75cca70b5e0b Mon Sep 17 00:00:00 2001
f085be
From: =?UTF-8?q?Toma=C5=BE=20Vajngerl?= <tomaz.vajngerl@collabora.com>
f085be
Date: Fri, 18 Jul 2014 13:36:59 +0200
f085be
Subject: [PATCH 046/137] bnc#881024 Handle 0 font height just like outdev &
f085be
 drawinglayer
f085be
f085be
Change-Id: I80055e4101873e0ddd408ac1f0ee9c75cc3bf6b3
f085be
Reviewed-on: https://gerrit.libreoffice.org/10435
f085be
Reviewed-by: Andras Timar <andras.timar@collabora.com>
f085be
Tested-by: Andras Timar <andras.timar@collabora.com>
f085be
---
f085be
 cppcanvas/source/mtfrenderer/implrenderer.cxx | 13 ++++++++++++-
f085be
 1 file changed, 12 insertions(+), 1 deletion(-)
f085be
f085be
diff --git a/cppcanvas/source/mtfrenderer/implrenderer.cxx b/cppcanvas/source/mtfrenderer/implrenderer.cxx
f085be
index a8145bb..b7cbcab 100644
f085be
--- a/cppcanvas/source/mtfrenderer/implrenderer.cxx
f085be
+++ b/cppcanvas/source/mtfrenderer/implrenderer.cxx
f085be
@@ -809,7 +809,18 @@ namespace cppcanvas
f085be
 
f085be
             // TODO(Q3): This code smells of programming by
f085be
             // coincidence (the next two if statements)
f085be
-            const ::Size rFontSizeLog( rFont.GetSize() );
f085be
+
f085be
+            ::Size rFontSizeLog( rFont.GetSize() );
f085be
+
f085be
+            if (rFontSizeLog.Height() == 0)
f085be
+            {
f085be
+                // guess 16 pixel (as in VCL)
f085be
+                rFontSizeLog = ::Size(0, 16);
f085be
+
f085be
+                // convert to target MapUnit if not pixels
f085be
+                rFontSizeLog = OutputDevice::LogicToLogic(rFontSizeLog, MAP_PIXEL, rParms.mrVDev.GetMapMode());
f085be
+            }
f085be
+
f085be
             const sal_Int32 nFontWidthLog = rFontSizeLog.Width();
f085be
             if( nFontWidthLog != 0 )
f085be
             {
f085be
-- 
f085be
1.9.3
f085be