summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--oox/source/export/drawingml.cxx7
-rw-r--r--sd/qa/unit/data/odp/tdf118045.odpbin0 -> 12192 bytes
-rw-r--r--sd/qa/unit/export-tests-ooxml1.cxx15
3 files changed, 20 insertions, 2 deletions
diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index af96b14f1ac6..fbe13359dd9b 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -2877,8 +2877,11 @@ bool DrawingML::WriteParagraphProperties( const Reference< XTextContent >& rPara
bool bHasLinespacing = false;
LineSpacing aLineSpacing;
if (GetPropertyAndState(rXPropSet, rXPropState, "ParaLineSpacing", eState)
- && eState == beans::PropertyState_DIRECT_VALUE)
- bHasLinespacing = ( mAny >>= aLineSpacing );
+ && (mAny >>= aLineSpacing)
+ && (eState == beans::PropertyState_DIRECT_VALUE ||
+ // only export if it differs from the default 100% line spacing
+ aLineSpacing.Mode != LineSpacingMode::PROP || aLineSpacing.Height != 100))
+ bHasLinespacing = true;
bool bRtl = false;
if (GetProperty(rXPropSet, "WritingMode"))
diff --git a/sd/qa/unit/data/odp/tdf118045.odp b/sd/qa/unit/data/odp/tdf118045.odp
new file mode 100644
index 000000000000..8b5fac36af4f
--- /dev/null
+++ b/sd/qa/unit/data/odp/tdf118045.odp
Binary files differ
diff --git a/sd/qa/unit/export-tests-ooxml1.cxx b/sd/qa/unit/export-tests-ooxml1.cxx
index 52b580a95e05..9efb79ae9cf1 100644
--- a/sd/qa/unit/export-tests-ooxml1.cxx
+++ b/sd/qa/unit/export-tests-ooxml1.cxx
@@ -124,6 +124,7 @@ public:
void testPlaceholderFillAndOutlineExport();
void testTdf143126();
void testTdf143129();
+ void testTdf118045();
CPPUNIT_TEST_SUITE(SdOOXMLExportTest1);
@@ -190,6 +191,7 @@ public:
CPPUNIT_TEST(testPlaceholderFillAndOutlineExport);
CPPUNIT_TEST(testTdf143126);
CPPUNIT_TEST(testTdf143129);
+ CPPUNIT_TEST(testTdf118045);
CPPUNIT_TEST_SUITE_END();
@@ -1733,6 +1735,19 @@ void SdOOXMLExportTest1::testTdf143129()
assertXPath(pXmlDoc, "/p:presentationPr/p:showPr/p:custShow", "id", "0" );
}
+void SdOOXMLExportTest1::testTdf118045()
+{
+ sd::DrawDocShellRef xDocShRef
+ = loadURL(m_directories.getURLFromSrc(u"/sd/qa/unit/data/odp/tdf118045.odp"), ODP);
+ utl::TempFile tempFile;
+ xDocShRef = saveAndReload(xDocShRef.get(), PPTX, &tempFile);
+ xDocShRef->DoClose();
+
+ xmlDocUniquePtr pXmlDoc1 = parseExport(tempFile, "ppt/slides/slide1.xml");
+ assertXPath(pXmlDoc1, "/p:sld/p:cSld/p:spTree/p:sp/p:txBody/a:p/a:pPr/a:lnSpc/a:spcPct", "val",
+ "110000");
+}
+
CPPUNIT_TEST_SUITE_REGISTRATION(SdOOXMLExportTest1);
CPPUNIT_PLUGIN_IMPLEMENT();