diff options
author | Caolán McNamara <caolanm@redhat.com> | 2017-01-25 16:51:00 +0000 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2017-02-08 11:56:05 +0100 |
commit | 0353bc884e833af32629a2a1a1c4725c8d0aecae (patch) | |
tree | 67a4449a737fe69bf0941103dc8223e3ce75533c /vcl/source | |
parent | 23d1c222394a5b82b806018431375bf47276f3c4 (diff) |
Resolves: tdf#94457 our EmfPlusSetPageTransform is malformed
we write a single short, resulting in a record of 0x000C in length MS-EMFPLUS
spec has EmfPlusSetPageTransform as 0x0010 in length because we're not writing
the 4 byte PageScale value.
the previous pageunit unit we are writing is of value 1, which is
UnitTypeDisplay, the same spec says...
"The unit of measure for page space coordinates, from the UnitType enumeration.
This value SHOULD NOT be UnitTypeDisplay or UnitTypeWorld"
and footnotes that with...
"Windows never writes those values to the PageUnit field, but they are accepted
with undefined results."
Reviewed-on: https://gerrit.libreoffice.org/33560
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
(cherry picked from commit cf730cae337d06ac4efa72c9248b194d60d91c88)
Change-Id: Ic8b5ec463b59aab28ae9897947dfcdbd35b22048
Diffstat (limited to 'vcl/source')
-rw-r--r-- | vcl/source/filter/wmf/emfwr.cxx | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/vcl/source/filter/wmf/emfwr.cxx b/vcl/source/filter/wmf/emfwr.cxx index c5978b02fb0f..afd9af3d35c6 100644 --- a/vcl/source/filter/wmf/emfwr.cxx +++ b/vcl/source/filter/wmf/emfwr.cxx @@ -239,7 +239,6 @@ void EMFWriter::WriteEMFPlusHeader( const Size &rMtfSizePix, const Size &rMtfSiz ImplPlusRecord( EmfPlusSetPixelOffsetMode, 0x0 ); ImplPlusRecord( EmfPlusSetAntiAliasMode, 0x09 ); // TODO: Check actual values for AntiAlias ImplPlusRecord( EmfPlusSetCompositingQuality, 0x0100 ); // Default Quality - ImplPlusRecord( EmfPlusSetPageTransform, 1 ); ImplPlusRecord( EmfPlusSetInterpolationMode, 0x00 ); // Default ImplPlusRecord( EmfPlusGetDC, 0x00 ); ImplEndCommentRecord(); |