filter/source/svg/svgwriter.cxx |    1 -
 sd/qa/unit/SVGExportTests.cxx   |    8 ++++----
 2 files changed, 4 insertions(+), 5 deletions(-)

New commits:
commit 0a549b2c9595cd076e3b503b67df93bff380885a
Author:     Szymon Kłos <[email protected]>
AuthorDate: Fri Aug 4 10:01:26 2023 +0200
Commit:     Szymon Kłos <[email protected]>
CommitDate: Fri Aug 11 09:45:58 2023 +0200

    svg: export text decoration for text run not paragraph
    
    Previously we exported text-decoration and other properties
    for whole paragraph what was overriding run properties.
    So we reused properties of the first run for all other runs
    in the paragraph.
    
    Change that so we write font properties for individual runs only.
    
    Change-Id: Ie30f0166132b2ee302d0fdd12e7eb3ee36766a33
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155348
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-by: Szymon Kłos <[email protected]>

diff --git a/filter/source/svg/svgwriter.cxx b/filter/source/svg/svgwriter.cxx
index 97e1c74c082b..4df1352ddc10 100644
--- a/filter/source/svg/svgwriter.cxx
+++ b/filter/source/svg/svgwriter.cxx
@@ -1349,7 +1349,6 @@ void SVGTextWriter::startTextParagraph()
         mrExport.AddAttribute( XML_NAMESPACE_NONE, "class", "TextParagraph" );
     }
     maParentFont = vcl::Font();
-    addFontAttributes( /* isTexTContainer: */ true );
     mpTextParagraphElem.reset(new SvXMLElementExport( mrExport, 
XML_NAMESPACE_NONE, aXMLElemTspan, mbIWS, mbIWS ));
 
     if( !mbIsListLevelStyleImage )
diff --git a/sd/qa/unit/SVGExportTests.cxx b/sd/qa/unit/SVGExportTests.cxx
index a8d64e828a67..573c7e2405cc 100644
--- a/sd/qa/unit/SVGExportTests.cxx
+++ b/sd/qa/unit/SVGExportTests.cxx
@@ -89,12 +89,12 @@ public:
         assertXPath(svgDoc, SAL_STRINGIFY( /SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G 
), "class", "Slide");
         assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1] ), "class", "TitleText");
         assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT ), "class", 
"SVGTextShape");
-        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN ), 
"class", "TextParagraph");
-        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN ), 
"text-decoration", "underline");
+        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN
 ), "class", "TextPosition");
+        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[1]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN[1]
 ), "text-decoration", "underline");
 
         assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT ), "class", 
"SVGTextShape");
-        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN ), 
"class", "TextParagraph");
-        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN ), 
"text-decoration", "line-through");
+        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN
 ), "class", "TextPosition");
+        assertXPath(svgDoc, SAL_STRINGIFY( 
/SVG_SVG/SVG_G[2]/SVG_G/SVG_G/SVG_G/SVG_G/SVG_G[2]/SVG_G/SVG_TEXT/SVG_TSPAN/SVG_TSPAN/SVG_TSPAN
 ), "text-decoration", "line-through");
     }
 
     void testSVGExportJavascriptURL()

Reply via email to