summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-10-23 16:40:25 +0100
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-10-27 13:15:22 +0000
commit8965f2b4d9f9436d2353b041c84b67165d729f34 (patch)
treefe53a30d3df9648aa85ef681ae2f05a45169123b /vcl
parentd6a6261fa99d5ea00f530ba234f9557f33ac9b2b (diff)
take the world scaling factor for fonts, but not the rotation
regression from commit 8f705df1221c3f92d8cde68bdf726a7c3ce8fe1b Author: Tomaž Vajngerl <tomaz.vajngerl@collabora.com> Date: Fri Jul 18 13:36:13 2014 +0200 bnc#881024 Don't world transform font size in WMF/EMF import which seems to be a regression from commit 1281c1f52b77c4c4fb08e129542c2c4912b38555 Author: Armin Le Grand <alg@apache.org> Date: Mon Dec 10 16:08:58 2012 +0000 Resolves: #i121382# Corrected size handling including font size handling... for EMF/WMF imports Change-Id: I87307c9993d3343b4db636257e2567b10a73b79d (cherry picked from commit 4eb70290210022860294644d67ba50d55806621c) Reviewed-on: https://gerrit.libreoffice.org/19559 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/filter/wmf/winmtf.cxx14
1 files changed, 12 insertions, 2 deletions
diff --git a/vcl/source/filter/wmf/winmtf.cxx b/vcl/source/filter/wmf/winmtf.cxx
index c5d1cf99832b..3f54ae84368d 100644
--- a/vcl/source/filter/wmf/winmtf.cxx
+++ b/vcl/source/filter/wmf/winmtf.cxx
@@ -408,8 +408,18 @@ Size WinMtfOutput::ImplMap(const Size& rSz, bool bDoWorldTransform)
}
else
{
- fWidth = rSz.Width();
- fHeight = rSz.Height();
+ //take the scale, but not the rotation
+ basegfx::B2DHomMatrix aMatrix(maXForm.eM11, maXForm.eM12, 0,
+ maXForm.eM21, maXForm.eM22, 0);
+ basegfx::B2DTuple aScale, aTranslate;
+ double fRotate, fShearX;
+ if (!aMatrix.decompose(aScale, aTranslate, fRotate, fShearX))
+ {
+ aScale.setX(1.0);
+ aScale.setY(1.0);
+ }
+ fWidth = rSz.Width() * aScale.getX();
+ fHeight = rSz.Height() * aScale.getY();
}
if ( mnGfxMode == GM_COMPATIBLE )