diff --git a/easypoi-base/src/main/java/org/jeecgframework/poi/word/parse/ParseWord07.java b/easypoi-base/src/main/java/org/jeecgframework/poi/word/parse/ParseWord07.java index 0b2f97a..958a92a 100644 --- a/easypoi-base/src/main/java/org/jeecgframework/poi/word/parse/ParseWord07.java +++ b/easypoi-base/src/main/java/org/jeecgframework/poi/word/parse/ParseWord07.java @@ -6,6 +6,8 @@ import java.util.List; import java.util.Map; import org.apache.poi.xwpf.usermodel.XWPFDocument; +import org.apache.poi.xwpf.usermodel.XWPFFooter; +import org.apache.poi.xwpf.usermodel.XWPFHeader; import org.apache.poi.xwpf.usermodel.XWPFParagraph; import org.apache.poi.xwpf.usermodel.XWPFRun; import org.apache.poi.xwpf.usermodel.XWPFTable; @@ -42,6 +44,7 @@ public class ParseWord07 { * @param currentRun * @throws Exception */ + @SuppressWarnings("deprecation") private void addAnImage(WordImageEntity obj, XWPFRun currentRun) throws Exception { Object[] isAndType = POIPublicUtil.getIsAndType(obj); String picId; @@ -239,7 +242,9 @@ public class ParseWord07 { private void parseWordSetValue(MyXWPFDocument doc, Map map) throws Exception { // 第一步解析文档 parseAllParagraphic(doc.getParagraphs(), map); - // 第二步解析所有表格 + // 第二步解析页眉,页脚 + parseHeaderAndFoot(doc, map); + // 第三步解析所有表格 XWPFTable table; Iterator itTable = doc.getTablesIterator(); while (itTable.hasNext()) { @@ -251,4 +256,25 @@ public class ParseWord07 { } + /** + * 解析页眉和页脚 + * @param doc + * @param map + * @throws Exception + */ + private void parseHeaderAndFoot(MyXWPFDocument doc, Map map) throws Exception { + List headerList = doc.getHeaderList(); + for (XWPFHeader xwpfHeader : headerList) { + for (int i = 0; i < xwpfHeader.getListParagraph().size(); i++) { + parseThisParagraph(xwpfHeader.getListParagraph().get(i), map); + } + } + List footerList = doc.getFooterList(); + for (XWPFFooter xwpfFooter : footerList) { + for (int i = 0; i < xwpfFooter.getListParagraph().size(); i++) { + parseThisParagraph(xwpfFooter.getListParagraph().get(i), map); + } + } + + } } diff --git a/easypoi-test/.classpath b/easypoi-test/.classpath index f32149e..cd3f839 100644 --- a/easypoi-test/.classpath +++ b/easypoi-test/.classpath @@ -1,22 +1,17 @@ - + - + + - - - - - - diff --git a/easypoi-test/src/main/java/org/jeecgframework/poi/word/WordExportUtilTest.java b/easypoi-test/src/main/java/org/jeecgframework/poi/word/WordExportUtilTest.java index 4f38287..af4292a 100644 --- a/easypoi-test/src/main/java/org/jeecgframework/poi/word/WordExportUtilTest.java +++ b/easypoi-test/src/main/java/org/jeecgframework/poi/word/WordExportUtilTest.java @@ -17,7 +17,7 @@ public class WordExportUtilTest { /** * 简单导出包含图片 */ - @Test + //@Test public void imageWordExport() { Map map = new HashMap(); map.put("department", "Jeecg"); @@ -49,6 +49,8 @@ public class WordExportUtilTest { map.put("department", "Jeecg"); map.put("person", "JueYue"); map.put("time", format.format(new Date())); + map.put("me","JueYue"); + map.put("date", "2015-01-03"); try { XWPFDocument doc = WordExportUtil.exportWord07( "org/jeecgframework/poi/word/doc/Simple.docx", map); diff --git a/easypoi-test/src/main/java/org/jeecgframework/poi/word/doc/Simple.docx b/easypoi-test/src/main/java/org/jeecgframework/poi/word/doc/Simple.docx index 309ca8b..93fbe7b 100644 Binary files a/easypoi-test/src/main/java/org/jeecgframework/poi/word/doc/Simple.docx and b/easypoi-test/src/main/java/org/jeecgframework/poi/word/doc/Simple.docx differ