summaryrefslogtreecommitdiff
path: root/xmloff
diff options
context:
space:
mode:
authorRegina Henschel <rb.henschel@t-online.de>2021-03-20 20:05:19 +0100
committerXisco Fauli <xiscofauli@libreoffice.org>2021-03-23 11:24:39 +0100
commit7c4a797148a68b342b17f2d34854d6bacf51cb85 (patch)
tree5e0cccfce9b8a013647fe1444d2a00f563fe094d /xmloff
parentb18bffb5b4948bbdaece90a68a4c9341ad9df084 (diff)
tdf#141127 Use ODF default values for draw:extrusion-skew
The default value for extrusion skew angle is 45 in ODF and -135 in binary MS Office. LO had used -135 in case the draw:extrusion-skew attribute was missing on import. This could be fixed in GetSkew() in EnhancedCustomShape3d.cxx#92. But that would break import of ppt files. So I have decided not to search, were the binary import would need to be tweaked, but I set the default values directly in file open in case the attribute is missing. Change-Id: Ieeffa64099fdbdbe0ba9d4dab7ed2f19d397a6e3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112819 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de> (cherry picked from commit 2bf8c1e0e211601a70b6b28fdb92f636c7969513) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112809 Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Diffstat (limited to 'xmloff')
-rw-r--r--xmloff/source/draw/ximpcustomshape.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/xmloff/source/draw/ximpcustomshape.cxx b/xmloff/source/draw/ximpcustomshape.cxx
index 3bd71eae268d..ef58c7664baa 100644
--- a/xmloff/source/draw/ximpcustomshape.cxx
+++ b/xmloff/source/draw/ximpcustomshape.cxx
@@ -1291,6 +1291,15 @@ void XMLEnhancedCustomShapeContext::endFastElement(sal_Int32 )
}
}
+ //tdf#141127 Add ODF default values. Otherwise defaults from MS Office binary format are used.
+ if (!maExtrusion.empty())
+ {
+ auto it = std::find_if(maExtrusion.begin(), maExtrusion.end(),
+ [](css::beans::PropertyValue& rProp){return EASGet(rProp.Name) == EAS_Skew;} );
+ if (it == maExtrusion.end())
+ GetEnhancedParameterPair(maExtrusion, "50 45", EAS_Skew);
+ }
+
SdXMLCustomShapePropertyMerge( mrCustomShapeGeometry, maExtrusion, EASGet( EAS_Extrusion ) );
SdXMLCustomShapePropertyMerge( mrCustomShapeGeometry, maPath, EASGet( EAS_Path ) );
SdXMLCustomShapePropertyMerge( mrCustomShapeGeometry, maTextPath, EASGet( EAS_TextPath ) );