summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2018-08-08 17:57:51 +0200
committerSzymon Kłos <szymon.klos@collabora.com>2018-08-08 22:39:09 +0200
commitf536bff1dc0e80c6ef23d132edf471ea75ffb05e (patch)
treebde165c1fb9596c46f18a1828f6078165b338f98
parent8536b96ab71bff7c996ad01063c5b514aaf4726f (diff)
tdf#116350 Fix export of fontwork
Change-Id: Icf3a07c6b79296feb233bbe08a6d69ab21a41414 Reviewed-on: https://gerrit.libreoffice.org/58746 Tested-by: Jenkins Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
-rw-r--r--oox/source/export/shapes.cxx7
-rw-r--r--sd/qa/unit/export-tests-ooxml2.cxx1
2 files changed, 7 insertions, 1 deletions
diff --git a/oox/source/export/shapes.cxx b/oox/source/export/shapes.cxx
index 6d6b8a24c6fa..a4e43f03c9e3 100644
--- a/oox/source/export/shapes.cxx
+++ b/oox/source/export/shapes.cxx
@@ -743,6 +743,9 @@ ShapeExport& ShapeExport::WriteCustomShape( const Reference< XShape >& xShape )
bool bFlipH = false;
bool bFlipV = false;
+ // Avoid interference of preset type to the next shape
+ m_presetWarp = "";
+
if( GETA( CustomShapeGeometry ) ) {
SAL_INFO("oox.shape", "got custom shape geometry");
if( mAny >>= aGeometrySeq ) {
@@ -1006,7 +1009,9 @@ ShapeExport& ShapeExport::WriteCustomShape( const Reference< XShape >& xShape )
}
if( rXPropSet.is() )
{
- WriteFill( rXPropSet );
+ // Preset shape with text has no fill
+ if( sShapeType.isEmpty() || !sShapeType.startsWith( "fontwork" ) )
+ WriteFill( rXPropSet );
WriteOutline( rXPropSet );
WriteShapeEffects( rXPropSet );
WriteShape3DEffects( rXPropSet );
diff --git a/sd/qa/unit/export-tests-ooxml2.cxx b/sd/qa/unit/export-tests-ooxml2.cxx
index fe2be051603e..fdbcc65d7778 100644
--- a/sd/qa/unit/export-tests-ooxml2.cxx
+++ b/sd/qa/unit/export-tests-ooxml2.cxx
@@ -1884,6 +1884,7 @@ void SdOOXMLExportTest2::testTdf116350TextEffects()
xmlDocPtr pXmlDocContent = parseExport(tempFile, "ppt/slides/slide1.xml");
assertXPath(pXmlDocContent, "//p:sp[1]/p:txBody/a:bodyPr/a:prstTxWarp", "prst", "textArchUp");
assertXPath(pXmlDocContent, "//p:sp[14]/p:txBody/a:bodyPr/a:prstTxWarp", "prst", "textCircle");
+ assertXPath(pXmlDocContent, "//p:sp[14]/p:spPr/a:solidFill/a:srgbClr", 0);
xDocShRef->DoClose();
}