Word表格中文字体修改:
一、设置字体(中文字体)
// 创建 段落 XWPFParagraph xp = j.addParagraph(); // 创建 XWPFRun 对象 XWPFRun title = xp.createRun(); // 普通设置字体方法 title.setFontFamily("仿宋"); // ----实测以上方法只是改了ASCII码的字体,并没有什么软用 // 以下是研究出来改中文字体的 // 新建 字体配置对象 CTFonts font = title.getCTR().addNewRPr().addNewRFonts(); //中文 font.setEastAsia("黑体"); // ASCII font.setAscii("仿宋"); //上一种方法setFontFamily() 其实只调用了这个方法 // 其他字符(有想法可以自己去研究一下是什么字符的): font.setCs("仿宋"); font.setHAnsi("楷体");
如下亲测有效:
//将第一个表格的字体重新设置
if (tableNum == 1) {
for (int j = 0; j < rcount; j++) {
XWPFTableRow row = table.getRow(j);
List<XWPFTableCell> cells = row.getTableCells();
for (XWPFTableCell cell : cells) {
String cellText = cell.getText();
XWPFParagraph cellParagraph = cell.getParagraphArray(0);
XWPFRun rIO = cellParagraph.getRuns().get(0);
// 新建 字体配置对象
CTFonts font = rIO.getCTR().addNewRPr().addNewRFonts();
//中文
font.setEastAsia("楷体");
// ASCII
font.setAscii("楷体"); //上一种方法setFontFamily() 其实只调用了这个方法
// 其他字符(有想法可以自己去研究一下是什么字符的):
font.setCs("楷体");
font.setHAnsi("楷体");
}
}
}
修改前:
修改后: