日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

poi控制简单的word

發布時間:2025/3/15 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 poi控制简单的word 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

官方model網址:http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/xwpf/usermodel/examples/。

需要jar包:

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.15</version>
</dependency>

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-scratchpad</artifactId>
<version>3.15</version>
</dependency>

<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.15</version>
</dependency>

根據官方model可以做很多事情,一下是我改變的例子,可以直接運行:

package test.poi;

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

import org.apache.poi.xwpf.usermodel.ParagraphAlignment;
import org.apache.poi.xwpf.usermodel.UnderlinePatterns;
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.XWPFTableRow;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHeight;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTShd;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTString;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTrPr;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTVerticalJc;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STJc;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STShd;
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STVerticalJc;

public class WordTest {
public static void main(String[] args) throws Exception {
try {
createSimpleTable();
} catch (Exception e) {
System.out.println("創建word失敗");
throw (e);
}
try {
createStyledTable();
} catch (Exception e) {
System.out.println("創建word失敗");
throw (e);
}
}

public static void createSimpleTable() throws Exception {
XWPFDocument doc = new XWPFDocument();

try {
XWPFTable table = doc.createTable(3, 3);

table.getRow(1).getCell(1).setText("EXAMPLE OF TABLE");

XWPFParagraph p1 = table.getRow(0).getCell(0).getParagraphs().get(0);

XWPFRun r1 = p1.createRun();
r1.setBold(true);
r1.setText("The quick brown fox");
r1.setItalic(true);
r1.setFontFamily("Courier");
r1.setUnderline(UnderlinePatterns.DOT_DOT_DASH);// 下劃線
r1.setTextPosition(100);

table.getRow(2).getCell(2).setText("only text");

OutputStream out = new FileOutputStream("D:\\simpleTable.docx");
try {
doc.write(out);
} finally {
out.close();
}
} finally {
doc.close();
}
}

public static void createStyledTable() throws Exception {
XWPFDocument doc = new XWPFDocument();

try {
int nRows = 6;
int nCols = 3;
XWPFTable table = doc.createTable(nRows, nCols);

CTTblPr tblPr = table.getCTTbl().getTblPr();
CTString styleStr = tblPr.addNewTblStyle();
styleStr.setVal("StyledTable");// 目前不知道這是干嘛用的,因為不寫這一句,word的樣式也沒有變化。知道的朋友歡迎交流
tblPr.addNewJc().setVal(STJc.CENTER);// 表格居中
System.out.println("STJc.CENTER:" + STJc.CENTER);
List<XWPFTableRow> rows = table.getRows();
int rowCt = 0;
int colCt = 0;
for (XWPFTableRow row : rows) {// 遍歷行
CTTrPr trPr = row.getCtRow().addNewTrPr();
// set row height; units = twentieth of a point, 360 = 0.25"
CTHeight ht = trPr.addNewTrHeight();
ht.setVal(BigInteger.valueOf(360));

List<XWPFTableCell> cells = row.getTableCells();
for (XWPFTableCell cell : cells) {// 便利單元格
CTTcPr tcpr = cell.getCTTc().addNewTcPr();
CTVerticalJc va = tcpr.addNewVAlign();
va.setVal(STVerticalJc.CENTER);
System.out.println("STVerticalJc.CENTER:" + STVerticalJc.CENTER);
CTShd ctshd = tcpr.addNewShd();
ctshd.setColor("auto");
ctshd.setVal(STShd.CLEAR);
if (rowCt == 0) {
ctshd.setFill("A7BFDE");
} else if (rowCt % 2 == 0) {
ctshd.setFill("D3DFEE");
} else {
ctshd.setFill("EDF2F8");
}

XWPFParagraph para = cell.getParagraphs().get(0);
XWPFRun rh = para.createRun();
if (colCt == nCols - 1) {
rh.setFontSize(10);
rh.setFontFamily("Courier");
}
if (rowCt == 0) {
// 表頭
rh.setText("header row, col " + colCt);
rh.setBold(true);
para.setAlignment(ParagraphAlignment.CENTER);
} else {
rh.setText("row " + rowCt + ", col " + colCt);
para.setAlignment(ParagraphAlignment.LEFT);
}
colCt++;
}
colCt = 0;
rowCt++;
}

OutputStream out = new FileOutputStream("D:\\styledTable.docx");
try {
doc.write(out);
} finally {
out.close();
}
} finally {
doc.close();
}
}
}

轉載于:https://www.cnblogs.com/shenjichenai/p/6920955.html

總結

以上是生活随笔為你收集整理的poi控制简单的word的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美日韩一级二级 | 91文字幕巨乱亚洲香蕉 | 欧美区一区二区 | 久草资源在线播放 | 国产无遮挡又黄又爽 | 日韩美女三级 | 亚洲国产成人精品久久 | 激情久| 欧美视频一区在线观看 | 国产美女三级无套内谢 | 福利电影一区二区 | 亚洲精品久久久久久久久久久久久 | 成人欧美一区二区三区黑人一 | 夜晚福利 | 91精品国产高清一区二区三密臀 | 亚洲综合中文 | 白丝久久| 一级做a爰片 | 国产第三页 | 欧美日韩成人在线视频 | 我要操av| 激情四射综合网 | 女女调教被c哭捆绑喷水百合 | 亚洲17p | 五月天久久久久久 | 国产一区二区在线观看免费 | 欧美激情网 | 西西人体高清44rt·net | 国产高清在线观看 | 懂色视频在线观看 | 不卡精品视频 | 成人免费片库 | 在线观看成年人网站 | 日本三级精品 | 德国经典free性复古xxxx | 五月婷丁香 | 中文字幕一区二区三区手机版 | 久久精品首页 | 在线永久看片免费的视频 | 男人的网站在线观看 | 色网站免费看 | 黄色大片网站在线观看 | 国产精品丝袜视频 | 中国肥胖女人真人毛片 | 国产无套丰满白嫩对白 | 免费成人av网址 | 国产在线色 | 男人透女人免费视频 | 欧美日韩一区二区视频观看 | 69国产视频 | 欧洲成人午夜精品无码区久久 | 国产精在线 | 18禁男女爽爽爽午夜网站免费 | 五月天色小说 | 麻豆av毛片| 91色偷偷| 影音先锋男人站 | 久久只有精品 | 色xxxxxx | 色妹子综合 | 天天干b| h视频在线免费看 | 亚洲国产精品成人无久久精品 | 97人妻人人澡人人爽人人精品 | 日韩女优网站 | 用力使劲高潮了888av | 欧美一二三区视频 | 在线播放一区二区三区 | 91资源在线观看 | 在线播放国产精品 | 巨乳免费观看 | 国产一区午夜 | 国产在线观 | 欧美视频福利 | 久久合合 | 嫩草视频在线观看视频 | 精品日韩一区二区三区 | 国产又粗又大又硬 | 日本性欧美 | 成人黄色片免费看 | 在线二区 | 老子午夜影院 | 九九热精品视频在线播放 | 日韩欧美精品一区二区三区 | 亚洲无吗视频 | 日本三级午夜理伦三级三 | 97人人澡人人爽人人模亚洲 | 91亚洲网站| 国产乱淫视频 | 超碰97在线资源 | 玩偶姐姐在线看 | 亚洲va国产va天堂va久久 | 无码精品国产一区二区三区 | 97视频播放 | 超级黄色片 | 国产无套丰满白嫩对白 | 欧美20p | 99热手机在线观看 | 欧美一级黄 |