記錄一次Java生成Word

大體流程

製做模板

  • 建立word文件
  • 作出想要的格式
  • 保存至wordxml 2003
  • 用NotePad打開
  • 將須要填充的地方加上${}
  • 將須要循環的地方加上循環標
  • 將文件後綴修改成.ftl

Java操做

  • 導入freemarker.jar 和 common-lang.jar
  • 導入模板,自動填充
  • 標籤大體等同於 OpenXml 標籤
  • 換行爲 <w:br/>
  • 對Tab符須要進行轉換,在段首加上

    ,在每段先後加上p標籤,而後經過字符串轉換來修改。
String[] arrName=strName.split("</p>");
		
		for(int i=0;i<arrName.length;i++) {
			if(arrName[i].contains("</p>")) {
				arrName[i].replaceAll("</p>", "");
			}
		}
		
    strName=FtlUtil.getString(arrName);
		
		
     ftlContentRemark ="<w:p><w:pPr><w:widowControl/><w:ind w:first-line=\"480\" w:first-line-chars=\"200\"/><w:rPr><w:rFonts w:ascii=\"仿宋\" w:h-ansi=\"仿宋\" w:fareast=\"仿宋\" w:cs=\"仿宋\" w:hint=\"default\"/>" + 
    			"<w:kern w:val=\"0\"/><w:sz w:val=\"24\"/><w:sz-cs w:val=\"24\"/></w:rPr></w:pPr>${person.remarks}</w:p>";
複製代碼
相關文章
相關標籤/搜索