diff options
| -rw-r--r-- | NEWS | 2 | ||||
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/docx/OfficeXml.java | 14 | ||||
| -rw-r--r-- | src/test/java/org/zwobble/mammoth/tests/MammothTests.java | 8 | ||||
| -rw-r--r-- | src/test/resources/test-data/strict-format.docx | bin | 0 -> 11692 bytes |
4 files changed, 22 insertions, 2 deletions
@@ -4,6 +4,8 @@ * Throw error when failing to find the body element in a document. +* Add support for the strict document format. + # 1.6.0 * Support merged paragraphs when revisions are tracked. diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/OfficeXml.java b/src/main/java/org/zwobble/mammoth/internal/docx/OfficeXml.java index 1cb7cd1..d4dc5f6 100644 --- a/src/main/java/org/zwobble/mammoth/internal/docx/OfficeXml.java +++ b/src/main/java/org/zwobble/mammoth/internal/docx/OfficeXml.java @@ -11,15 +11,25 @@ import static org.zwobble.mammoth.internal.util.Lists.list; public class OfficeXml { private static final NamespacePrefixes XML_NAMESPACES = NamespacePrefixes.builder() + // Transitional format .put("w", "http://schemas.openxmlformats.org/wordprocessingml/2006/main") + .put("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships") .put("wp", "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing") .put("a", "http://schemas.openxmlformats.org/drawingml/2006/main") .put("pic", "http://schemas.openxmlformats.org/drawingml/2006/picture") + + // Strict format + .put("w", "http://purl.oclc.org/ooxml/wordprocessingml/main") + .put("r", "http://purl.oclc.org/ooxml/officeDocument/relationships") + .put("wp", "http://purl.oclc.org/ooxml/drawingml/wordprocessingDrawing") + .put("a", "http://purl.oclc.org/ooxml/drawingml/main") + .put("pic", "http://purl.oclc.org/ooxml/drawingml/picture") + + // Common .put("content-types", "http://schemas.openxmlformats.org/package/2006/content-types") - .put("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships") .put("relationships", "http://schemas.openxmlformats.org/package/2006/relationships") - .put("v", "urn:schemas-microsoft-com:vml") .put("mc", "http://schemas.openxmlformats.org/markup-compatibility/2006") + .put("v", "urn:schemas-microsoft-com:vml") .put("office-word", "urn:schemas-microsoft-com:office:word") .build(); diff --git a/src/test/java/org/zwobble/mammoth/tests/MammothTests.java b/src/test/java/org/zwobble/mammoth/tests/MammothTests.java index f491abd..85a20ce 100644 --- a/src/test/java/org/zwobble/mammoth/tests/MammothTests.java +++ b/src/test/java/org/zwobble/mammoth/tests/MammothTests.java @@ -310,6 +310,14 @@ public class MammothTests { isSuccess("Apple\n\nBanana\n\n")); } + @Test + public void canReadStrictFormat() throws IOException { + assertThat( + convertToHtml("strict-format.docx"), + isSuccess("<p>Test</p>") + ); + } + private Result<String> convertToHtml(String name) throws IOException { File file = TestData.file(name); return new DocumentConverter().convertToHtml(file); diff --git a/src/test/resources/test-data/strict-format.docx b/src/test/resources/test-data/strict-format.docx Binary files differnew file mode 100644 index 0000000..4495720 --- /dev/null +++ b/src/test/resources/test-data/strict-format.docx |
