[Libreoffice-commits] core.git: vcl/win

Libreoffice Gerrit user logerrit at kemper.freedesktop.org
Sun Jan 13 11:17:18 UTC 2019


 vcl/win/gdi/gdiimpl.cxx |   15 +++++++++++++++
 1 file changed, 15 insertions(+)

New commits:
commit 6e3c4ae8bca898700cde9caaff43c3a8a61eebc2
Author:     Armin Le Grand <Armin.Le.Grand at me.com>
AuthorDate: Fri Jan 11 17:59:59 2019 +0100
Commit:     Armin Le Grand <Armin.Le.Grand at cib.de>
CommitDate: Sun Jan 13 12:16:57 2019 +0100

    tdf#122384 Added isPrinter support to WinSalGraphicsImpl::drawPolyLine
    
    As already guessed but not been sure (see 'One more hint'
    in WinSalGraphicsImpl::drawPolyPolygon) the strange WinGDI
    transform is also needed when printing for WinSalGraphicsImpl::
    drawPolyLine.
    
    Change-Id: I39f89eac0c17e524949221306723a355c6e94a17
    Reviewed-on: https://gerrit.libreoffice.org/66190
    Tested-by: Jenkins
    Reviewed-by: Armin Le Grand <Armin.Le.Grand at cib.de>

diff --git a/vcl/win/gdi/gdiimpl.cxx b/vcl/win/gdi/gdiimpl.cxx
index ec7682b14899..bb70bc3901c3 100644
--- a/vcl/win/gdi/gdiimpl.cxx
+++ b/vcl/win/gdi/gdiimpl.cxx
@@ -2345,6 +2345,21 @@ bool WinSalGraphicsImpl::drawPolyLine(
         aGraphics.SetSmoothingMode(Gdiplus::SmoothingModeNone);
     }
 
+    if(mrParent.isPrinter())
+    {
+        // tdf#122384 As metioned above in WinSalGraphicsImpl::drawPolyPolygon
+        // (look for 'One more hint: This *may* also be needed now in'...).
+        // See comments in same spot above *uregntly* before doing changes here,
+        // these comments are *still fully valid* at this place (!)
+        const Gdiplus::REAL aDpiX(aGraphics.GetDpiX());
+        const Gdiplus::REAL aDpiY(aGraphics.GetDpiY());
+
+        aGraphics.ScaleTransform(
+            Gdiplus::REAL(100.0) / aDpiX,
+            Gdiplus::REAL(100.0) / aDpiY,
+            Gdiplus::MatrixOrderAppend);
+    }
+
     aGraphics.DrawPath(
         &aPen,
         &(*pGraphicsPath));


More information about the Libreoffice-commits mailing list