summaryrefslogtreecommitdiff
path: root/vcl/source/gdi
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2021-11-04 15:44:11 +0000
committerCaolán McNamara <caolanm@redhat.com>2021-11-04 18:15:30 +0100
commit4ab908e94da9305d6800c82b5d753c26193aa96b (patch)
treedc501126dea7b6f7c1d97d82cefc4cc314e7b771 /vcl/source/gdi
parent1ba97706372fce487bead27ab69bb2e4bc3062e3 (diff)
Resolves: tdf#138826 adjust the aTmpMtf to get drawn at maPos of Action
see also #i112076# Change-Id: I9c3eea3d5d518da164821bfcf494292dccb69e27 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124714 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/source/gdi')
-rw-r--r--vcl/source/gdi/pdfwriter_impl2.cxx6
1 files changed, 6 insertions, 0 deletions
diff --git a/vcl/source/gdi/pdfwriter_impl2.cxx b/vcl/source/gdi/pdfwriter_impl2.cxx
index c2fb49e84d87..e472dbd52cef 100644
--- a/vcl/source/gdi/pdfwriter_impl2.cxx
+++ b/vcl/source/gdi/pdfwriter_impl2.cxx
@@ -438,6 +438,12 @@ void PDFWriterImpl::playMetafile( const GDIMetaFile& i_rMtf, vcl::PDFExtOutDevDa
const Color aTransCol( rTransparenceGradient.GetStartColor() );
const sal_uInt16 nTransPercent = aTransCol.GetLuminance() * 100 / 255;
m_rOuterFace.BeginTransparencyGroup();
+
+ // tdf#138826 adjust the aTmpMtf to start at rPos (see also #i112076#)
+ Point aMtfOrigin(aTmpMtf.GetPrefMapMode().GetOrigin());
+ if (rPos != aMtfOrigin)
+ aTmpMtf.Move(rPos.X() - aMtfOrigin.X(), rPos.Y() - aMtfOrigin.Y());
+
playMetafile( aTmpMtf, nullptr, i_rContext, pDummyVDev );
m_rOuterFace.EndTransparencyGroup( tools::Rectangle( rPos, rSize ), nTransPercent );
}