diff options
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java b/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java index 464884a..f6a9863 100644 --- a/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java +++ b/src/main/java/org/zwobble/mammoth/internal/docx/StatefulBodyXmlReader.java @@ -338,9 +338,18 @@ class StatefulBodyXmlReader { } private ReadResult readTable(XmlElement element) { - return readElements(element.getChildren()) - .flatMap(this::calculateRowspans) - .map(Table::new); + XmlElementLike properties = element.findChildOrEmpty("w:tblPr"); + return ReadResult.map( + readTableStyle(properties), + readElements(element.getChildren()) + .flatMap(this::calculateRowspans), + + Table::new + ); + } + + private InternalResult<Optional<Style>> readTableStyle(XmlElementLike properties) { + return readStyle(properties, "w:tblStyle", "Table", styles::findTableStyleById); } private ReadResult calculateRowspans(List<DocumentElement> rows) { |
