diff options
Diffstat (limited to 'src/main/java/org/zwobble')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/documents/Run.java | 9 | ||||
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java | 7 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/main/java/org/zwobble/mammoth/documents/Run.java b/src/main/java/org/zwobble/mammoth/documents/Run.java index 9a41730..45ab77c 100644 --- a/src/main/java/org/zwobble/mammoth/documents/Run.java +++ b/src/main/java/org/zwobble/mammoth/documents/Run.java @@ -1,18 +1,25 @@ package org.zwobble.mammoth.documents; import java.util.List; +import java.util.Optional; public class Run implements DocumentElement, HasChildren { private final List<DocumentElement> children; + private final Optional<Style> style; - public Run(List<DocumentElement> children) { + public Run(Optional<Style> style, List<DocumentElement> children) { this.children = children; + this.style = style; } public List<DocumentElement> getChildren() { return children; } + public Optional<Style> getStyle() { + return style; + } + @Override public <T> T accept(DocumentElementVisitor<T> visitor) { return visitor.visit(this); diff --git a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java index a9e99f1..4c826de 100644 --- a/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java +++ b/src/main/java/org/zwobble/mammoth/docx/BodyXmlReader.java @@ -30,7 +30,7 @@ public class BodyXmlReader { case "w:t": return success(new Text(element.innerText())); case "w:r": - return readElements(element.children()).map(Run::new); + return readRun(element); case "w:p": return readParagraph(element); @@ -43,6 +43,11 @@ public class BodyXmlReader { } } + private ReadResult readRun(XmlElement element) { + return readElements(element.children()) + .map(children -> new Run(Optional.empty(), children)); + } + public ReadResult readElements(Iterable<XmlNode> nodes) { return ReadResult.concat( transform( |
