`
53873039oycg
  • 浏览: 842264 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

[简单]poi导出简单word2007带页眉页脚

    博客分类:
  • poi
 
阅读更多

         直接上代码,代码很简单没什么难度

        

import java.io.FileOutputStream;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.List;

import org.apache.poi.xwpf.model.XWPFHeaderFooterPolicy;
import org.apache.poi.xwpf.usermodel.Borders;
import org.apache.poi.xwpf.usermodel.BreakClear;
import org.apache.poi.xwpf.usermodel.BreakType;
import org.apache.poi.xwpf.usermodel.ParagraphAlignment;
import org.apache.poi.xwpf.usermodel.TextAlignment;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableCell;
import org.apache.poi.xwpf.usermodel.XWPFTableCell.XWPFVertAlign;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;
import org.apache.xmlbeans.impl.xb.xmlschema.SpaceAttribute;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFldChar;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTJc;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTR;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTRPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTSectPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblWidth;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTc;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTText;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STFldCharType;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STHdrFtr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STJc;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STTblWidth;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STVerticalJc;

public class POI_页眉_S3_Test {
	public static void main(String[] args) throws Exception {
		POI_页眉_S3_Test t=new POI_页眉_S3_Test();
		System.out.println("------------------------简单文字页脚-----------------");
		t.simpleFooter("f:/saveFile/temp/sys_"+ System.currentTimeMillis() + ".docx");
		System.out.println("------------------------简单文字页眉页脚-----------------");
		XWPFDocument document = new XWPFDocument();
		t.simpleDateHeader(document);
		t.createSimpleTable(document);
		t.addNewPage(document, BreakType.PAGE);
		String str="测试测试测试测试测试文本测试测试测试测试测试文本测试\r\n测试测试测试测试文本测试测试测试测试测试文本测试";
		t.addSimpleParagraph(document, str, "宋体",11,"FF0000", true, false);
		t.addNewPage(document, BreakType.COLUMN);
		t.addSimpleParagraph(document, str,"微软雅黑",12, "00FF00", false, true);
		t.addNewPage(document, BreakType.TEXT_WRAPPING);
		t.addSimpleParagraph(document, str,"楷体",13, "0000FF", true, true);
		t.addBreakClear(document, BreakClear.ALL);
		t.addSimpleParagraph(document, str,"黑体",14,"000000", false, false);
		t.simpleNumberFooter(document);
		t.saveDocument(document, "f:/saveFile/temp/sys_"+ System.currentTimeMillis() + ".docx");
	}

	/**
	 * @Description: 文字页脚
	 * @see: http://www.coderanch.com/t/525626/java/java/Adding-Header-Footer-Word-Document
	 */
	public void simpleFooter(String savePath) throws Exception {
		XWPFDocument document = new XWPFDocument();
		CTP ctp = CTP.Factory.newInstance();
		CTR ctr = ctp.addNewR();
		CTText textt = ctr.addNewT();
		textt.setStringValue( "测试" );
		XWPFParagraph codePara = new XWPFParagraph( ctp, document );
		codePara.setAlignment(ParagraphAlignment.CENTER);
		codePara.setVerticalAlignment(TextAlignment.CENTER);
		XWPFParagraph[] newparagraphs = new XWPFParagraph[1];
		newparagraphs[0] = codePara;
		CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();
		XWPFHeaderFooterPolicy headerFooterPolicy = new  XWPFHeaderFooterPolicy( document, sectPr );
		headerFooterPolicy.createFooter( STHdrFtr.DEFAULT, newparagraphs );
		headerFooterPolicy.createHeader(STHdrFtr.DEFAULT, newparagraphs );
		FileOutputStream fos = new FileOutputStream(savePath);
		document.write(fos);
		fos.close();
	}
	
	//页脚:显示页码信息
	public void simpleNumberFooter(XWPFDocument document) throws Exception {
		CTP ctp = CTP.Factory.newInstance();
		XWPFParagraph codePara = new XWPFParagraph(ctp, document);
		XWPFRun r1 = codePara.createRun();
		r1.setText("第");
		r1.setFontSize(11);
		CTRPr rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("宋体");
		fonts.setEastAsia("宋体");
		fonts.setHAnsi("宋体");

		r1 = codePara.createRun();
		CTFldChar fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("begin"));

		r1 = codePara.createRun();
		CTText ctText = r1.getCTR().addNewInstrText();
		ctText.setStringValue("PAGE  \\* MERGEFORMAT");
		ctText.setSpace(SpaceAttribute.Space.Enum.forString("preserve"));
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("宋体");
		fonts.setEastAsia("宋体");
		fonts.setHAnsi("宋体");

		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("end"));

		r1 = codePara.createRun();
		r1.setText("页 总共");
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("宋体");
		fonts.setEastAsia("宋体");
		fonts.setHAnsi("宋体");
		
		r1 = codePara.createRun();
		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("begin"));

		r1 = codePara.createRun();
		ctText = r1.getCTR().addNewInstrText();
		ctText.setStringValue("NUMPAGES  \\* MERGEFORMAT ");
		ctText.setSpace(SpaceAttribute.Space.Enum.forString("preserve"));
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("宋体");
		fonts.setEastAsia("宋体");
		fonts.setHAnsi("宋体");

		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("end"));
		
		r1 = codePara.createRun();
		r1.setText("页");
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("宋体");
		fonts.setEastAsia("宋体");
		fonts.setHAnsi("宋体");
		
		codePara.setAlignment(ParagraphAlignment.CENTER);
		codePara.setVerticalAlignment(TextAlignment.CENTER);
		codePara.setBorderTop(Borders.THICK);
		XWPFParagraph[] newparagraphs = new XWPFParagraph[1];
		newparagraphs[0] = codePara;
		CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();
		XWPFHeaderFooterPolicy headerFooterPolicy = new XWPFHeaderFooterPolicy(document, sectPr);
		headerFooterPolicy.createFooter(STHdrFtr.DEFAULT, newparagraphs);
	}
	
	
	public void simpleDateHeader(XWPFDocument document) throws Exception {
		CTP ctp = CTP.Factory.newInstance();
		XWPFParagraph codePara = new XWPFParagraph(ctp, document);
		
		XWPFRun r1 = codePara.createRun();
		CTFldChar fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("begin"));

		r1 = codePara.createRun();
		CTText ctText = r1.getCTR().addNewInstrText();
		ctText.setStringValue("TIME \\@ \"EEEE\"");
		ctText.setSpace(SpaceAttribute.Space.Enum.forString("preserve"));
		r1.setFontSize(11);
		CTRPr rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("微软雅黑");
		fonts.setEastAsia("微软雅黑");
		fonts.setHAnsi("微软雅黑");

		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("end"));

		r1 = codePara.createRun();
		r1.setText("年");
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("微软雅黑");
		fonts.setEastAsia("微软雅黑");
		fonts.setHAnsi("微软雅黑");
		
		r1 = codePara.createRun();
		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("begin"));

		r1 = codePara.createRun();
		ctText = r1.getCTR().addNewInstrText();
		ctText.setStringValue("TIME \\@ \"O\"");
		ctText.setSpace(SpaceAttribute.Space.Enum.forString("preserve"));
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("微软雅黑");
		fonts.setEastAsia("微软雅黑");
		fonts.setHAnsi("微软雅黑");

		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("end"));
		
		r1 = codePara.createRun();
		r1.setText("月");
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("微软雅黑");
		fonts.setEastAsia("微软雅黑");
		fonts.setHAnsi("微软雅黑");
		
		r1 = codePara.createRun();
		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("begin"));

		r1 = codePara.createRun();
		ctText = r1.getCTR().addNewInstrText();
		ctText.setStringValue("TIME \\@ \"A\"");
		ctText.setSpace(SpaceAttribute.Space.Enum.forString("preserve"));
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("微软雅黑");
		fonts.setEastAsia("微软雅黑");
		fonts.setHAnsi("微软雅黑");

		fldChar = r1.getCTR().addNewFldChar();
		fldChar.setFldCharType(STFldCharType.Enum.forString("end"));
		
		r1 = codePara.createRun();
		r1.setText("日");
		r1.setFontSize(11);
		rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii("微软雅黑");
		fonts.setEastAsia("微软雅黑");
		fonts.setHAnsi("微软雅黑");
		
		codePara.setAlignment(ParagraphAlignment.CENTER);
		codePara.setVerticalAlignment(TextAlignment.CENTER);
		codePara.setBorderBottom(Borders.THICK);
		XWPFParagraph[] newparagraphs = new XWPFParagraph[1];
		newparagraphs[0] = codePara;
		CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();
		XWPFHeaderFooterPolicy headerFooterPolicy = new XWPFHeaderFooterPolicy(document, sectPr);
		headerFooterPolicy.createHeader(STHdrFtr.DEFAULT, newparagraphs);
	}
	
	public void addNewPage(XWPFDocument document,BreakType breakType){
		XWPFParagraph xp = document.createParagraph();
		xp.createRun().addBreak(breakType);
	}
	
	public void addBreakClear(XWPFDocument document,BreakClear breakClear){
		XWPFParagraph xp = document.createParagraph();
		xp.createRun().addBreak(breakClear);
	}

	//TODO 写的时候遇到过一次数组越界,测试几次都没法重现
	public void addSimpleParagraph(XWPFDocument document,String text,String fontName,int fontSize,String color,boolean isBold,boolean isItalic){
		XWPFParagraph xp = document.createParagraph();
		XWPFRun r1 = xp.createRun();
		r1.setText(text);
		r1.setFontSize(fontSize);
		r1.setBold(isBold);
		r1.setItalic(isItalic);
		r1.setColor(color);
		CTRPr rpr = r1.getCTR().isSetRPr() ? r1.getCTR().getRPr() : r1.getCTR().addNewRPr();
		CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
		fonts.setAscii(fontName);
		fonts.setEastAsia(fontName);
		fonts.setHAnsi(fontName);
		xp.setAlignment(ParagraphAlignment.CENTER);
		xp.setVerticalAlignment(TextAlignment.CENTER);
	}
	
	
	//注意: 代码采用的是先写数据再写表头
	public  void createSimpleTable(XWPFDocument doc) throws Exception {
		List<String> columnList = new ArrayList<String>();
		columnList.add("序号");
		columnList.add("姓名信息|姓甚|名谁");
		columnList.add("名刺信息|籍贯|营生");
		XWPFTable table = doc.createTable(2,5);
		CTTbl ttbl = table.getCTTbl();
		CTTblPr tblPr = ttbl.getTblPr() == null ? ttbl.addNewTblPr() : ttbl.getTblPr();
		CTTblWidth tblWidth = tblPr.isSetTblW() ? tblPr.getTblW() : tblPr.addNewTblW();
		CTJc cTJc=tblPr.addNewJc();
		cTJc.setVal(STJc.Enum.forString("center"));
		tblWidth.setW(new BigInteger("8000"));
		tblWidth.setType(STTblWidth.DXA);
		
		XWPFTableRow firstRow=null;
		XWPFTableRow secondRow=null;
		XWPFTableCell firstCell=null;
		XWPFTableCell secondCell=null;
		
		for(int i=0;i<2;i++){
			firstRow=table.getRow(i);
			firstRow.setHeight(380);
			for(int j=0;j<5;j++){
				firstCell=firstRow.getCell(j);
				setCellText(firstCell, "测试", null, 1600);
			}
		}
		
		firstRow=table.insertNewTableRow(0);
	    secondRow=table.insertNewTableRow(1);
		firstRow.setHeight(380);
		secondRow.setHeight(380);
		for(String str:columnList){
			if(str.indexOf("|") == -1){
				firstCell=firstRow.addNewTableCell();
				secondCell=secondRow.addNewTableCell();
				createVSpanCell(firstCell, str,"CCCCCC",1600,STMerge.RESTART);
				createVSpanCell(secondCell, "", "CCCCCC", 1600,null);
			}else{
				String[] strArr=str.split("\\|");
				firstCell=firstRow.addNewTableCell();
				createHSpanCell(firstCell, strArr[0],"CCCCCC",1600,STMerge.RESTART);
				for(int i=1;i<strArr.length-1;i++){
					firstCell=firstRow.addNewTableCell();
					createHSpanCell(firstCell, "","CCCCCC",1600,null);
				}
				for(int i=1;i<strArr.length;i++){
					secondCell=secondRow.addNewTableCell();
					setCellText(secondCell, strArr[i], "CCCCCC", 1600);
				}
			}
		}
		
	}
	
	public  void setCellText(XWPFTableCell cell,String text, String bgcolor, int width) {
		CTTc cttc = cell.getCTTc();
		CTTcPr cellPr = cttc.addNewTcPr();
		cellPr.addNewTcW().setW(BigInteger.valueOf(width));
		cell.setColor(bgcolor);
		cell.setVerticalAlignment(XWPFVertAlign.CENTER);
		CTTcPr ctPr = cttc.addNewTcPr();
		ctPr.addNewVAlign().setVal(STVerticalJc.CENTER);
		cttc.getPList().get(0).addNewPPr().addNewJc().setVal(STJc.CENTER);
		cell.setText(text);
	}
	public void createHSpanCell(XWPFTableCell cell,String value, String bgcolor, int width,STMerge.Enum stMerge){
		CTTc cttc = cell.getCTTc();
		CTTcPr cellPr = cttc.addNewTcPr();
		cellPr.addNewTcW().setW(BigInteger.valueOf(width));
		cell.setColor(bgcolor);
		cellPr.addNewHMerge().setVal(stMerge);
		cellPr.addNewVAlign().setVal(STVerticalJc.CENTER);
		cttc.getPList().get(0).addNewPPr().addNewJc().setVal(STJc.CENTER);
		cttc.getPList().get(0).addNewR().addNewT().setStringValue(value);
	}
	
	public void createVSpanCell(XWPFTableCell cell,String value, String bgcolor, int width,STMerge.Enum stMerge){
		CTTc cttc = cell.getCTTc();
		CTTcPr cellPr = cttc.addNewTcPr();
		cellPr.addNewTcW().setW(BigInteger.valueOf(width));
		cell.setColor(bgcolor);
		cellPr.addNewVMerge().setVal(stMerge);
		cellPr.addNewVAlign().setVal(STVerticalJc.CENTER);
		cttc.getPList().get(0).addNewPPr().addNewJc().setVal(STJc.CENTER);
		cttc.getPList().get(0).addNewR().addNewT().setStringValue(value);
	}
	
	
	public void saveDocument(XWPFDocument document,String savePath) throws Exception{
		FileOutputStream fos = new FileOutputStream(savePath);
		document.write(fos);
		fos.close();
	}
	
	
}

    结果为:

   

------------------------简单文字页脚-----------------

   

   

------------------------简单文字页眉页脚-----------------

   

   

       转载请注明原处,原文链接:http://53873039oycg.iteye.com/blog/2149884  ,谢谢。

       全文完

  

  • 大小: 4.3 KB
  • 大小: 25.5 KB
  • 大小: 98.3 KB
2
0
分享到:
评论

相关推荐

    POI导出Word 页眉 页脚 标题设置

    在本主题中,我们将深入探讨如何使用POI库来导出Word文档,并进行页眉、页脚和标题的设置。这个过程涉及到对Word文档的高级布局控制,对于自动化报告生成或批量创建文档非常有用。 1. **Apache POI简介** Apache ...

    基于poi导出word以及图片

    在本教程中,我们将重点讨论如何利用Apache POI 3.13版本来导出Word文档,并结合图片操作。 首先,Apache POI提供了一个叫做HWPF(Horrible Word Processor Format)的API来处理老版的Word(.doc)文件,而XWPF...

    POI导出word工具类

    《使用Apache POI库导出Word文档》 在Java编程中,处理Microsoft Office文档时,Apache POI是一个不可或缺的库。POI项目提供了一系列API,允许开发者读取、写入和修改Microsoft Office格式的文件,包括Excel、Word...

    Java 生成word文件,带样式,带页眉,带页码,带图片,带表格

    Java 生成word文件,带样式,带页眉,带页码,带图片,带表格,需要相关iText包,包可在http://download.csdn.net/detail/wuxinxing1981/8055977 链接下载。

    poi导出word文档jar包

    此外,由于这个"poi导出word文档jar包"的描述比较简单,可能包含了其他相关的jar包或工具,比如可能包含了处理图片、模板或者样式文件的工具。在具体应用时,你需要根据实际情况检查和使用这些资源,以确保完整地...

    POI生成word文档

    在实际应用中,可能还需要处理更多细节,如样式继承、页眉页脚的设置、列表的创建、书签和超链接的添加等。此外,为了提高性能,可以考虑使用低内存模式或者延迟加载策略,尤其是在处理大型文档时。总之,Apache POI...

    poi合并多个word文档并设置页码

    在Word中,页码通常通过页眉或页脚来显示。在POI中,我们可以通过以下方式实现: 1. 创建或获取页眉/页脚对象,`XWPFHeaderFooterPolicy`可以帮助我们管理文档的页眉和页脚。 2. 创建一个新的段落(`XWPFParagraph`)...

    poi解析excel、word2007,2010等版本

    - **写入Word内容**: XWPF允许创建新的Word文档,添加和编辑段落、表格、图片,甚至可以插入和格式化页眉、页脚、书签等。 4. **项目实践** "poiTest"项目中可能包含了以下内容: - **示例代码**: 展示如何使用...

    java poi导出word文档DEMO

    在这个"java poi导出word文档DEMO"中,我们将深入探讨如何使用Java POI库来创建和导出Word文档。 首先,我们需要在项目中引入Apache POI的相关依赖。对于Maven项目,可以在pom.xml文件中添加以下依赖: ```xml ...

    Java POI 生成Word文档所需的jar包

    在实际开发中,你可能还需要处理更复杂的需求,如嵌入表格、链接、页眉页脚、样式表等。Java POI提供了丰富的API来满足这些需求。记得在项目中添加上述提到的jar包,以便正确地使用和编译代码。 总的来说,Java POI...

    使用poi根据模版生成word文档并转换成PDF文件

    - 处理复杂格式:Word模板可能包含复杂的格式,如图片、表格、页眉页脚等,这些都需要额外处理。 - 错误处理:在代码中添加适当的错误处理,以应对文件不存在、转换失败等情况。 通过以上步骤,你可以利用Apache ...

    Apache poi 根据word模板生成word报表 替换 循环列表 图片

    这个例子只是一个起点,实际应用中可能需要更复杂的逻辑,例如处理表格、页眉页脚、条件语句等。在调试过程中,确保正确设置图片的位置,以及模板路径的准确性是至关重要的。 总之,Apache POI为Java开发者提供了一...

    使用POI操作word

    - Section: 是Range的一部分,是文档的基本结构单元,通常包含页眉、页脚和主体内容。 2. **创建Word文档** 使用POI创建Word文档首先需要创建`HWPFDocument`实例,然后通过`DocumentBuilder`添加文本、样式、段落...

    poi导出excel文档

    8. HSSFHeader和HSSFFooter:分别表示工作表的页眉和页脚。 9. HSSFCellStyle:定义单元格样式,包括对齐方式、边框、填充等。 10. HSSFDateUtil:用于处理Excel中的日期。 11. HSSFPrintSetup:配置打印设置,如页...

    UEditor富文本编辑器+内容转word导出整合经验分享(SpringMVC+Ueditor+mybatis+Maven)

    UEditor 是由百度「FEX前端研发团队」开发的所见即所得富文本web编辑...笔者使用Springmvc+mybatis+maven搭建,并实现插入图片、文字、表格转word,rar包中有具体的代码。 运行需将jacob下的dll拷贝至jdk/jre/bin目录下

    Java使用poi做Word导出

    本篇文章将深入探讨如何使用Apache POI在Java中创建和导出Word文档。 首先,我们需要在项目中引入Apache POI库。`pom.xml`文件中的依赖配置通常是这样的: ```xml &lt;groupId&gt;org.apache.poi &lt;artifactId&gt;poi ...

    java--Poi 生成word文档

    除了基本的文本操作,POI还支持更复杂的功能,如创建表格、插入图片、定义页眉和页脚、添加样式表等。例如,要创建一个表格,你可以使用`XWPFDocument`的`createTable()`方法,然后添加行和单元格。 ```java ...

    用java的poi技术导出world模板

    这可能是一个示例程序或模板文件,用于演示如何使用POI导出Word模板。在实践中,你可以参考这个示例代码,了解具体实现的细节。 总之,Apache POI为Java开发者提供了强大且灵活的手段来操作Word文档,无论是读取、...

    Java导出Word及工具

    除了基本的文本操作,Apache POI还支持更复杂的功能,如插入图片、表格、页眉和页脚、样式设置等。例如,你可以使用`XWPFParagraph`的`setParagraphAlignment`方法来设置段落对齐方式,或者使用`XWPFRun`的`...

    通过poi生成word.rar

    POI还支持更复杂的操作,如页眉和页脚的添加、书签、自动编号、脚注和批注等。对于这些功能,需要使用相应的API接口进行设置。 8. **性能优化**: 处理大型文档时,POI可能会消耗大量内存。为了避免内存溢出,...

Global site tag (gtag.js) - Google Analytics