poi操作word2007常用方法总结.doc

上传人:scccc 文档编号:13892833 上传时间:2022-01-26 格式:DOC 页数:60 大小:390KB
返回 下载 相关 举报
poi操作word2007常用方法总结.doc_第1页
第1页 / 共60页
poi操作word2007常用方法总结.doc_第2页
第2页 / 共60页
poi操作word2007常用方法总结.doc_第3页
第3页 / 共60页
poi操作word2007常用方法总结.doc_第4页
第4页 / 共60页
poi操作word2007常用方法总结.doc_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《poi操作word2007常用方法总结.doc》由会员分享,可在线阅读,更多相关《poi操作word2007常用方法总结.doc(60页珍藏版)》请在三一文库上搜索。

1、poi操作word 2007常用方法总结import java.io.File;import java.io.FilelnputStream;import java.io.FileOutputStream;import java.ioO Exception;import java.i onputStream;import java.math.Biglnteger;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import mons.lang3.StringUtils;import org.a

2、pache.poi.POIXMLDocument;import org.apache.poi.openxml4j.opc.OPCPackage;import org.apache.poi.xwpf.model.XWPFHeaderFooterPolicy;import org.apache.poi.xwpf.usermodel.BodyElementType;import org.apache.poi.xwpf.usermodel.Borders;import org.apache.poi.xwpf.usermodel.BreakType;import org.apache.poi.xwpf.

3、usermodel.Document;importorg.apache.poi.xwpf.usermodel.lBodyElement;importorg.apache.poi.xwpf.usermodel.ParagraphAlignment;importorg.apache.poi.xwpf.usermodel.TextAlignment;importorg.apache.poi.xwpf.usermodel.VerticalAlign;importorg.apache.poi.xwpf.usermodel.XWPFDocument;importorg.apache.poi.xwpf.us

4、ermodel.XWPFParagraph;importorg.apache.poi.xwpf.usermodel.XWPFRelation;importorg.apache.poi.xwpf.usermodel.XWPFRun;importorg.apache.poi.xwpf.usermodel.XWPFTable;importorg.apache.poi.xwpf.usermodel.XWPFTableCell;importorg.apache.poi.xwpf.usermodel.XWPFTableRow;importorg.apache.xmlbeans.XmlException;i

5、mportorg.apache.xmlbeans.XmlToken;importorg.apache.xmlbeans.impl.xb.xmlschema.SpaceAttribute;importorg.openxmlformats.schemas.drawingml.x2006.main.CTNonVisualDrawingProps;importorg.openxmlformats.schemas.drawingml.x2006.main.CTPositiveSize2D;importorg.openxmlformats.schemas.drawingml.x2006.wordproce

6、ssingDrawing.CTInline;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTBackground;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTBookmark;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTBorder;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.C

7、TColor;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTDecimalNumber;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTEm;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTFIdChar;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTFonts;importorg.

8、openxmlformats.schemas.wordprocessingml.x2006.main.CTHMerge;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTHeight;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTHighlight;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTHpsMeasure;importorg.openxmlformat

9、s.schemas.wordprocessingml.x2006.main.CTHyperlink;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTInd;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTJc;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTMarkupRange;importorg.openxmlformats.schemas.wordproce

10、ssingml.x2006.main.CTOnOff;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTP;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTPageBorders;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTPag

11、eMar;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTPageS z;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTParaRPr;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTR;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTRPr;importorg.openxmlform

12、ats.schemas.wordprocessingml.x2006.main.CTRow;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTSectPr;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTShd;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTSignedTwipsMeasure;importorg.openxmlformats.schemas.wo

13、rdprocessingml.x2006.main.CTSpacing;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTbl;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblBorders;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblGrid;importorg.openxmlformats.schemas.wordprocessingml.x2

14、006.main.CTTblGridCol;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblPr;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblWidth;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTc;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;imp

15、ortorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTText;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTextScale;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTrPr;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTUnderline;importorg.openxmlform

16、ats.schemas.wordprocessingml.x2006.main.CTVMerge;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTVerticalJc;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STBorder;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STEm;importorg.openxmlformats.schemas.wordproc

17、essingml.x2006.main.STFIdCharType;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STHdrFtr;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STHeightRule;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STHighlightColor;importorg.openxmlformats.schemas.wordprocess

18、ingml.x2006.main.STJc;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STLineSpacingRule;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STMerge;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STOnOff;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.

19、STPageOrientation;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STShd;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STTblWidth;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STUnderline;importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STVertica

20、lAlignRun;import org.openxmlformats.schemas.wordprocessingml.x2006.main.STVerticalJc;public class POI_Word2007_ 工具类 _S3_Test /替换复制表格段落Word插入书签*/* Description:添加书签String colorVal,boolean isBlod, boolean isUnderLine,String colorVal,boolean isBlod, boolean isUnderLine,*/public void addParagraphContentB

21、ookmarkBasicStyle(XWPFParagraph p,String content, BigInteger markId, String bookMarkName,boolean isInsert,boolean isNewLine, String fontFamily,boolean isBlod,String fontSize, String colorVal,boolean isUnderLine, String underLineColor,STUnderline.Enum underStyle,boolean isItalic,boolean isStrike) CTB

22、ookmark bookStart = p.getCTP().addNewBookmarkStart();bookStart.setld(markld);bookStart.setName(bookMarkName);XWPFRun pRun = getOrAddParagraphFirstRun(p, islnsert, isNewLine);setParagraphRunFontlnfo(p, pRun, content, fontFamily, fontSize);setParagraphTextStylelnfo(p, pRun, colorVal, isBlod, isUnderLi

23、ne,underLineColor, underStyle, isItalic, isStrike,false , falsefalse , false , false , false , false , null , false , null , false null , null , null , 0, 0, 0);CTMarkupRange bookEnd = p.getCTP().addNewBookmarkEnd();bookEnd.setld(markld);* Description:添加书签*/public void addParagraphContentBookmark(XW

24、PFParagraph p, String content,Biglnteger markld, String bookMarkName,boolean islnsert,boolean isNewLine, String fontFamily, String fontSize,String colorVal,boolean isBlod, boolean isUnderLine,String underLineColor, STUnderline.Enum underStyle,booleanisltalic,boolean isStrike,boolean isDStrike,boolea

25、nisShadow,booleanisVanish,booleanisEmboss,booleanislmprint,booleanisOutline,boolean isEm,STEm.Enum emType,booleanisHightLight,STHighlightColor.Enum hightStyle,boolean isShd,STShd.Enum shdStyle, String shdColor, VerticalAlign verticalAlign,int position, int spacingValue, int indent) CTBookmark bookSt

26、art = p.getCTP().addNewBookmarkStart();bookStart.setld(markld);bookStart.setName(bookMarkName);XWPFRun pRun = getOrAddParagraphFirstRun(p, islnsert, isNewLine);setParagraphRunFontlnfo(p, pRun, content, fontFamily, fontSize);setParagraphTextStylelnfo(p, pRun, colorVal, isBlod, isUnderLine,underLineCo

27、lor, underStyle, isltalic, isStrike, isDStrike,isShadow, isVanish, isEmboss, islmprint, isOutline, isEm,emType, isHightLight, hightStyle, isShd, shdStyle, shdColor,verticalAlign, position, spacingValue, indent);String colorVal,boolean isBlod, boolean isUnderLine,CTMarkupRange bookEnd = p.getCTP().ad

28、dNewBookmarkEnd();bookEnd.setld(markld);/*Word*/插入超链接* Description:默认的超链接样式*/public void addParagraphTextHyperlinkBasicStyle(XWPFParagraph paragraph,String url, String text, String fontFamily, String fontSize,isStrike) String colorVal,boolean isBlod, boolean isltalic, booleanaddParagraphTextHyperlin

29、k(paragraph, url, text, fontFamily, fontSize,colorVal, isBlod,true , 0000FF , STUnderline.SINGLE, isltalic,isStrike,false , false , false , false , false , false , falsenull , false , null , false , null , null , null , 0, 0, 0);* Description:设置超链接样式* Description:设置超链接样式*/public void addParagraphTex

30、tHyperlink(XWPFParagraph paragraph, String url.String text, String fontFamily, String fontSize, String colorVal,boolean isBlod, boolean isUnderLine, String underLineColor,STUnderline.Enum underStyle,boolean isItalic, boolean isStrike,boolean isDStrike, boolean isShadow, boolean isVanish,boolean isEm

31、boss, boolean isImprint,boolean isOutline,boolean isEm, STEm.Enum emType,boolean isHightLight,STHighlightColor.Enum hightStyle,boolean isShd,STShd.Enum shdStyle, String shdColor,STVerticalAlignRun.Enum verticalAlign,int position,int spacingValue, int indent) / Add the link as External relationshipSt

32、ring id = paragraph.getDocument().getPackagePart().addExternalRelationship(url,XWPFRelation.HYPERLINK.getRelation().getld();/ Append the link and bind it to the relationshipCTHyperlink cLink = paragraph.getCTP().addNewHyperlink(); cLink.setId(id);/ Create the linked textCTText ctText = CTText.Factor

33、y.newlnstance();ctText.setStringValue(text);CTR ctr = CTR.Factory.newInstance();CTRPr rpr = ctr.addNewRPr();if (StringUtils.isNotBlank(fontFamily) /设置字体CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();fonts.setAscii(fontFamily);fonts.setEastAsia(fontFamily);fonts.setHAnsi(fon

34、tFamily);if (StringUtils.isNotBlank(fontSize) /设置字体大小CTHpsMeasure sz = rpr.isSetSz() ? rpr.getSz() : rpr.addNewSz(); sz.setVal( new Biglnteger(fontSize);CTHpsMeasure szCs = rpr.isSetSzCs() ? rpr.getSzCs(): rpr .addNewSzCs();szCs.setVal( new BigInteger(fontSize);/设置超链接样式/字体颜色if (StringUtils.isNotBlan

35、k(colorVal) CTColor color = CTColor.Factory.newlnstance();color.setVal(colorVal);rpr.setColor(color);/加粗if (isBlod) CTOnOff bCtOnOff = rpr.addNewB();bCtOnOff.setVal(STOnOff.TRUE);/下划线if (isUnderLine) CTUnderline udLine = rpr.addNewU();udLine.setVal(underStyle);udLine.setColor(underLineColor);/倾斜if (

36、isItalic) CTOnOff iCtOnOff = rpr.addNewl();iCtOnOff.setVal(STOnOff.TRUE);/删除线if (isStrike) CTOnOff sCtOnOff = rpr.addNewStrike();sCtOnOff.setVal(STOnOff.TRUE);/双删除线if (isDStrike) CTOnOff dsCtOnOff = rpr.addNewDstrike(); dsCtOnOff.setVal(STOnOff.TRUE);/阴影if (isShadow) CTOnOff shadowCtOnOff = rpr.addN

37、ewShadow(); shadowCtOnOff.setVal(STOnOff.TRUE);/隐藏if (isVanish) CTOnOff vanishCtOnOff = rpr.addNewVanish(); vanishCtOnOff.setVal(STOnOff.TRUE);/阳文if (isEmboss) CTOnOff embossCtOnOff = rpr.addNewEmboss();embossCtOnOff.setVal(STOnOff.TRUE);/阴文if (islmprint) CTOnOff isImprintCtOnOff = rpr.addNewlmprint

38、(); islmprintCtOnOff.setVal(STOnOff.TRUE);/ 空心if (isOutline) CTOnOff isOutlineCtOnOff = rpr.addNewOutline(); isOutlineCtOnOff.setVal(STOnOff.TRUE);/ 着重号if (isEm) CTEm em = rpr.addNewEm();em.setVal(emType);/突岀显示文本if (isHightLight) if (hightStyle !=null ) CTHighlight hightLight = rpr.addNewHighlight()

39、;hightLight.setVal(hightStyle);if (isShd) /设置底纹CTShd shd = rpr.addNewShd();if (shdStyle != null ) shd.setVal(shdStyle);if (shdColor != null ) shd.setColor(shdColor);/ 上标下标if (verticalAlign !=null ) rpr.addNewVertAlign().setVal(verticalAlign);/设置文本位置rpr.addNewPosition().setVal(new Biglnteger(String.v

40、alueOf(position);if (spacingValue !=0) /设置字符间距信息CTSignedTwipsMeasure ctSTwipsMeasure = rpr.addNewSpacing();ctSTwipsMeasure.setVal(new Biglnteger(String.valueOf(spacingValue);/设置字符间距缩进if (indent 0) CTTextScale paramCTTextScale = rpr.addNewW();paramCTTextScale.setVal(indent);ctr.setTArray(new CTText c

41、tText );cLink.setRArray(new CTR ctr );*/Word页眉页脚相关/* Description:页脚:显示页码信息*/throws Exception public void simpleNumberFooter(XWPFDocument document)CTP ctp = CTP.Factory.newlnstance();XWPFParagraph codePara =new XWPFParagraph(ctp, document);XWPFRun r1 = codePara.createRun();r1.setText(第);null ,微软雅黑,22

42、);setParagraphRunFontlnfo(codePara, r1.r1 = codePara.createRun();CTFldChar fldChar = r1.getCTR().addNewFldChar();fldChar.setFldCharType(STFIdCharType.BEGIN);r1 = codePara.createRun();CTText ctText = r1.getCTR().addNewlnstrText();ctText.setStringValue(PAGE * MERGEFORMAT);ctText.setSpace(SpaceAttribut

43、e.Space.PRESERVE);setParagraphRunFontlnfo(codePara, r1,null ,微软雅黑,22);fldChar = r1.getCTR().addNewFldChar();fldChar.setFldCharType(STFIdCharType.END);r1 = codePara.createRun();r1.setText( 页 总共”);setParagraphRunFontlnfo(codePara, r1,null ,微软雅黑 ”,22);r1 = codePara.createRun();fldChar = r1.getCTR().add

44、NewFldChar();fldChar.setFldCharType(STFIdCharType.BEGIN);r1 = codePara.createRun();ctText = r1.getCTR().addNewlnstrText();ctText.setStringValue(NUMPAGES * MERGEFORMAT );ctText.setSpace(SpaceAttribute.Space.PRESERVE);setParagraphRunFontlnfo(codePara, r1,null ,微软雅黑 ”,22);fldChar = r1.getCTR().addNewFl

45、dChar();fldChar.setFldCharType(STFIdCharType.END);r1 = codePara.createRun();r1.setText(页);setParagraphRunFontlnfo(codePara, r1,null ,微软雅黑 ”,22);setParagraphAlignlnfo(codePara, ParagraphAlignment.CENTER,TextAlignment.CENTER);codePara.setBorderTop(Borders.THICK);XWPFParagraph newparagraphs =new XWPFParagraph 1;newparagraphs 0 = codePara;CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();XWPFHeaderFooterPolicy headerFooterPolicy =new XWPFHeade

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1