如何将文本更改为粗体,无需更改字体

时间:2016-11-12 14:00:08

标签: java apache-poi

我可以使用代码设置文本粗体:

XSSFFont font = workbook.createFont();
font.setBold(true);
XSSFCellStyle bold = workbook.createCellStyle();
bold.setFont(font);
...
cell.setCellStyle(style);

是的,单元格有粗体样式,但它有另一种字体。它有Calibri(大小:11)。如果我创建没有样式的单元格,我会得到这个单元格:Liberation Sans(大小:10)。

好的,然后我尝试其他方式:

XSSFCell cell = row.createCell(0, CellType.STRING);
cell.setCellValue("test");
// Crash
// XSSFCellStyle style = row.getRowStyle();
XSSFCellStyle style = row.getCell(0).getCellStyle();    
XSSFFont font = style.getFont();
font.setBold(true);
style.setFont(font);
cell.setCellStyle(style);

没有差异。我得到Calibri(大小:11)。

但为什么呢?我怎么解决它?我希望所有单元格(粗体或不粗体)具有相同的字体名称和大小。我不想手动设置字体。

1 个答案:

答案 0 :(得分:0)

这是LibreOffice问题,我曾经打开xlsx文件。