Java/Apache POI - 如何更改/设置特定单元格中的字体大小?

标签 java apache-poi

我想更改工作表中单元格中填充的确定数据的字体大小。假设该单元格位于第 26 列的第 2 行。以范围方式来说,这将是:Z2。字体大小为11。例如,我想将字体大小更改为72。

我怎样才能做到这一点?

最佳答案

您可以使用现有字体(在工作表或工作簿中)并按原样使用它,也可以更改它并将其定义为新字体。您可以使用实际的 Activity 字体,如下所示:(其中 newCell 是您要修改的单元格)

Font newFont = newCell.getSheet().getWorkbook().findFont(oldFont.getBold(),
 oldFont.getColor(), oldFont.getFontHeight(), oldFont.getFontName(), oldFont.getItalic(),
 oldFont.getStrikeout(), oldFont.getTypeOffset(), oldFont.getUnderline());

要更改字体及其任何属性:

Font newFont = newCell.getSheet().getWorkbook().createFont();
     newFont.setBold(true);
     newFont.setColor(10);
     newFont.setFontHeightInPoints(72);
     newFont.setItalic(false);
     // ... etc.

可以设置的属性还有很多,当然这只是一个例子。但你还没有完成,现在你需要将 ypou 刚刚创建/找到的字体绑定(bind)到你想要的实际单元格。

CellStyle cellStyle = newCell.getSheet().getWorkbook().createCellStyle();
cellStyle.setFont(newFont);

..或者使用(一个方法创建新样式,另一个修改单元格中已有的样式):

CellUtil.setFont(newCell, newFont);

关于Java/Apache POI - 如何更改/设置特定单元格中的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50330592/

相关文章:

java - 我们如何在不打开联系人应用程序本身的情况下将新联系人插入 Android 联系人中?

java - 当值为 true 时,是否有更快的打印 "yes"的方法?

java - 杰特、poi、jexl。无法转换我的文档

java - 是否可以附加 2 个富文本字符串?

java - 如何在 Apache POI Word 中添加图片交叉引用?

java - 安卓 : What kind of encryption do I choose to send my data safely to an app using WCF?

java - Android 应用位置与速度

java - 输入输出同一个目录,MR会不会覆盖记录?

java - 如何在 Android 上创建 .docx 文件和 .xlsx 文件

java - @RunWith(DataProvider.class) 时 @Before 不会被执行