From 2bbcd06df60f4e7ab76e908a1173eeb343b22868 Mon Sep 17 00:00:00 2001 From: Andrzej Hunt Date: Wed, 1 Jan 2014 17:07:56 +0000 Subject: [PATCH 093/109] EMF+: mapping can rotate the width vector, so use resulting length. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Otherwise (i.e. with non-vertical lines) the width will be incorrect, and can result in lines disappearing as the resulting X component can be tiny/approaching zero. Change-Id: Icf3b7c10c627594600b517b8ff445f8df87c56f8 (cherry picked from commit 83f2b3c590120a60b5e94fb1a15054ebe0745dbb) Reviewed-on: https://gerrit.libreoffice.org/7249 Reviewed-by: Caolán McNamara Tested-by: Caolán McNamara --- cppcanvas/source/mtfrenderer/emfplus.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cppcanvas/source/mtfrenderer/emfplus.cxx b/cppcanvas/source/mtfrenderer/emfplus.cxx index 5eefdf6..7614bbb 100644 --- a/cppcanvas/source/mtfrenderer/emfplus.cxx +++ b/cppcanvas/source/mtfrenderer/emfplus.cxx @@ -789,7 +789,7 @@ namespace cppcanvas SAL_INFO ("cppcanvas.emf", "TODO: pen with zero width - using minimal which might not be correct\n"); } #endif - rStrokeAttributes.StrokeWidth = fabs((rState.mapModeTransform * rR.MapSize (width == 0.0 ? 0.05 : width, 0)).getX()); + rStrokeAttributes.StrokeWidth = fabs((rState.mapModeTransform * rR.MapSize (width == 0.0 ? 0.05 : width, 0)).getLength()); } void SetStrokeAttributes(rendering::StrokeAttributes& rStrokeAttributes) -- 1.8.4.2