summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMichael Stahl <michael.stahl@allotropia.de>2023-06-30 14:44:21 +0200
committerMichael Stahl <michael.stahl@allotropia.de>2023-07-03 11:32:14 +0200
commita225b4dbd46897903b217969da5f97f2660022c9 (patch)
tree56ac50c99cf54a6da161a9396ba262355d8d94a6 /include
parent7f1012806f5cf2cd53e52d8f2a95c09a2215efbc (diff)
tdf#152231 vcl,sw: PDF/UA export: fix comments in the margin
If enabled, the comments mess up the structure elements, because the PageSyncData::mActions stores indexes into the GDIMetaFile::m_aList vector, and in PageSyncData::PlaySyncPageAct() the indexes don't match. This is because SwViewShell::PrintOrPDFExport() replaces the GDIMetaFile with a temporary one, then records the page content, then applies scaling to the temporary one and replays it, recording with the original one; somehow replaying a temporary GDIMetaFile with 270 actions to one that already has 4 actions results in 392 actions. It's not obvious how this can work with the temporary GDIMetaFile, so try to get rid of it; not sure if there any drawbacks to this but the GDIMetaFile is freshly created by the caller in any case. Change-Id: Ic297367ea307aa8eee8d609751d06abf417e9629 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153808 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Diffstat (limited to 'include')
-rw-r--r--include/vcl/gdimtf.hxx1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/vcl/gdimtf.hxx b/include/vcl/gdimtf.hxx
index d62cd899623b..63bde564dcfd 100644
--- a/include/vcl/gdimtf.hxx
+++ b/include/vcl/gdimtf.hxx
@@ -115,6 +115,7 @@ public:
void Move( tools::Long nX, tools::Long nY );
// additional Move method getting specifics how to handle MapMode( MapUnit::MapPixel )
void Move( tools::Long nX, tools::Long nY, tools::Long nDPIX, tools::Long nDPIY );
+ void ScaleActions(double fScaleX, double fScaleY);
void Scale( double fScaleX, double fScaleY );
void Scale( const Fraction& rScaleX, const Fraction& rScaleY );
void Rotate( Degree10 nAngle10 );