poi设置word表格单元格宽度_xwpftable设置宽度;POI操作Word设置表格宽度

poi 操作word里表格,如设置表格宽度、行高、表格样式等。

1.表格或单元格宽度:

默认TblW的type属性为STTblWidth.AUTO,即自动伸缩。所以要调整为指定类型:STTblWidth.DXA 1)表格宽:

CTTblPr tblPr = xtab2.getCTTbl().getTblPr();

tblPr.getTblW().setType(STTblWidth.DXA);

tblPr.getTblW().setW(new BigInteger("7000"));

单元格宽:

CTTcPr tcpr = cell.getCTTc().addNewTcPr();

CTTblWidth cellw = tcpr.addNewTcW();

cellw.setType(STTblWidth.DXA);

cellw.setW(BigInteger.valueOf(360*5));

2.表格风格

注:如果不设置风格,将采用默认的Normal风格

CTTblPr tblPr = xtab2.getCTTbl().getTblPr();

CTString styleStr = tblPr.addNewTblStyle();

styleStr.setVal("StyledTable");

3.表格行高:获取表格行的CTTrPr.增加CTHeight属性

List rows = xtab2.getRows();

for (XWPFTableRow row : rows) {

CTTrPr trPr = row.getCtRow().addNewTrPr();

CTHeight ht = trPr.addNewTrHeight();

ht.setVal(BigInteger.valueOf(360));

......

}

表格行内容垂直居中:

CTVerticalJc va = tcpr.addNewVAlign();

va.setVal(STVerticalJc.CENTER);

4.表格单元格颜色

例如下面的标题行与奇偶行颜色设置

CTShd ctshd = tcpr.addNewShd();

ctshd.setColor("auto");

ctshd.setVal(STShd.CLEAR);

if (rowCt == 0) {

// 标题行

ctshd.setFill("A7BFDE");

}

else if (rowCt % 2 == 0) {

// even row

ctshd.setFill("D3DFEE");

}

else {

// odd row

ctshd.setFill("EDF2F8");

}

5.获取某指定位置对象并生成新的光标位置

注:这个更新或插入操作比较有用,比如更新文档目录.

XmlCursor cursor = doc.getDocument().getBody().getPArray(0).newCursor();

XWPFParagraph cP = doc.insertNewParagraph(cursor);

6.插入图片:

XWPFParagraph parapictest = document.createParagraph();

XWPFRun runtest = parapictest.createRun();

runtest.setText("图片:");

XWPFRun pictest = document.createParagraph().createRun();

XWPFPicture picture = pictest.addPicture(new FileInputStream("D://563.jpg"), Document.PICTURE_T YPE_JPEG, "D://563.jpg", 1000*360*10,1000*360*10);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值