From 8cbc3703c397cabc583d6f23fc482003fd96315e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alain=20B=C3=A9arez?= Date: Wed, 27 May 2020 01:18:15 +0000 Subject: [PATCH] Bug 63290: retrieve default run properties from paragraph git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1878147 13f79535-47bb-0310-9956-ffa450edef68 --- .../poi/xddf/usermodel/text/XDDFTextRun.java | 3 +- .../poi/xslf/usermodel/XSLFTextRun.java | 3 ++ .../xddf/usermodel/text/TestXDDFTextRun.java | 31 ++++++++++++++++++ .../poi/xslf/usermodel/TestXSLFTextRun.java | 27 +++++++++++++++ test-data/slideshow/bug63290.pptx | Bin 0 -> 31877 bytes 5 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 test-data/slideshow/bug63290.pptx diff --git a/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java b/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java index a9583c200d..89f5dced01 100644 --- a/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java +++ b/src/ooxml/java/org/apache/poi/xddf/usermodel/text/XDDFTextRun.java @@ -612,7 +612,8 @@ public class XDDFTextRun { } else if (isRegularRun() && _rtr.isSetRPr()) { return _rtr.getRPr(); } - return null; + XDDFRunProperties defaultProperties = _parent.getDefaultRunProperties(); + return (defaultProperties == null) ? null : defaultProperties.getXmlObject(); } private XDDFRunProperties getOrCreateProperties() { diff --git a/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java b/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java index d89c881711..16df8cecd7 100644 --- a/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java +++ b/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFTextRun.java @@ -492,6 +492,9 @@ public class XSLFTextRun implements TextRun { return tr.addNewRPr(); } } + if (_p.getXmlObject().isSetPPr() && _p.getXmlObject().getPPr().isSetDefRPr()) { + return _p.getXmlObject().getPPr().getDefRPr(); + } return null; } diff --git a/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java b/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java index e162ba18fb..1b45b8251f 100644 --- a/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java +++ b/src/ooxml/testcases/org/apache/poi/xddf/usermodel/text/TestXDDFTextRun.java @@ -18,16 +18,22 @@ package org.apache.poi.xddf.usermodel.text; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import java.io.IOException; +import java.io.InputStream; import java.util.List; +import org.apache.poi.POIDataSamples; import org.apache.poi.util.LocaleUtil; import org.apache.poi.xslf.usermodel.XMLSlideShow; +import org.apache.poi.xslf.usermodel.XSLFShape; import org.apache.poi.xslf.usermodel.XSLFSlide; +import org.apache.poi.xslf.usermodel.XSLFTextParagraph; +import org.apache.poi.xslf.usermodel.XSLFTextRun; import org.apache.poi.xslf.usermodel.XSLFTextShape; import org.apache.poi.xssf.usermodel.XSSFClientAnchor; import org.apache.poi.xssf.usermodel.XSSFDrawing; @@ -133,4 +139,29 @@ public class TestXDDFTextRun { assertNotNull(run.getText()); } } + + @Test + public void testDefaultRunProperties() throws IOException { + // bug #63290 + POIDataSamples pds = POIDataSamples.getSlideShowInstance(); + try (InputStream is = pds.openResourceAsStream("bug63290.pptx"); + XMLSlideShow ppt = new XMLSlideShow(is)) { + XSLFSlide slide = ppt.getSlides().get(0); + for (XSLFShape shape : slide.getShapes()) { + if (shape instanceof XSLFTextShape) { + XSLFTextShape text = (XSLFTextShape) shape; + XDDFTextParagraph paragraph = text.getTextBody().getParagraph(0); + XDDFTextRun defaultRun = paragraph.getTextRuns().get(0); + assertEquals("DefaultRunProperties", defaultRun.getText().trim()); + XDDFTextRun explicitRun = paragraph.getTextRuns().get(1); + assertEquals("ExplicitRunProperties", explicitRun.getText().trim()); + assertEquals(defaultRun.getDirty(), explicitRun.getDirty()); + assertEquals(defaultRun.getFontSize(), explicitRun.getFontSize()); + assertEquals(defaultRun.getLanguage(), explicitRun.getLanguage()); + assertEquals(defaultRun.getSpellError(), explicitRun.getSpellError()); + assertNotEquals(defaultRun.getFontColor(), explicitRun.getFontColor()); + } + } + } + } } diff --git a/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java b/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java index a3158b234d..8d26fc62e5 100644 --- a/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java +++ b/src/ooxml/testcases/org/apache/poi/xslf/usermodel/TestXSLFTextRun.java @@ -21,11 +21,15 @@ package org.apache.poi.xslf.usermodel; import static org.apache.poi.sl.TestCommonSL.getColor; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotEquals; import static org.junit.Assert.assertTrue; import java.awt.Color; import java.io.IOException; +import java.io.InputStream; +import org.apache.poi.POIDataSamples; +import org.apache.poi.ooxml.POIXMLDocumentPart; import org.apache.poi.sl.draw.DrawTextParagraph; import org.junit.Test; import org.openxmlformats.schemas.drawingml.x2006.main.CTTextLineBreak; @@ -118,4 +122,27 @@ public class TestXSLFTextRun { r.copy(s); } + + @Test + public void testDefaultRunProperties() throws IOException { + // bug #63290 + POIDataSamples pds = POIDataSamples.getSlideShowInstance(); + try (InputStream is = pds.openResourceAsStream("bug63290.pptx"); + XMLSlideShow ppt = new XMLSlideShow(is)) { + XSLFSlide slide = ppt.getSlides().get(0); + for (XSLFShape shape : slide.getShapes()) { + if (shape instanceof XSLFTextShape) { + XSLFTextShape text = (XSLFTextShape) shape; + XSLFTextParagraph paragraph = text.getTextParagraphs().get(0); + XSLFTextRun defaultRun = paragraph.getTextRuns().get(0); + assertEquals("DefaultRunProperties", defaultRun.getRawText().trim()); + XSLFTextRun explicitRun = paragraph.getTextRuns().get(1); + assertEquals("ExplicitRunProperties", explicitRun.getRawText().trim()); + assertEquals(defaultRun.getFontSize(), explicitRun.getFontSize()); + assertNotEquals(defaultRun.getFontColor(), explicitRun.getFontColor()); + } + } + } + } + } diff --git a/test-data/slideshow/bug63290.pptx b/test-data/slideshow/bug63290.pptx new file mode 100644 index 0000000000000000000000000000000000000000..84c3994b5cd54d7a850762c77ab5fa368eb6fb38 GIT binary patch literal 31877 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 z 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 literal 0 HcmV?d00001