POI的setColumnWidth——字符宽度?

use*_*690 2 java excel width apache-poi

public void setColumnWidth(int columnIndex, int width)

设置宽度(以字符宽度的 1/256 为单位)

哪个字符的宽度的 1/256 ?不同的字符有不同的宽度。我在这里缺少什么?

ndn*_*ala 5

如果您看到 HSSFSheet.setColumnWidth() 方法的 Javadoc,它有字符宽度的解释。粘贴以下摘录:

字符宽度定义为使用默认字体(工作簿中的第一个字体)呈现的数字 0、1、2、... 9 的最大数字宽度。除非您使用非常特殊的字体,否则默认字符为“0”(零),对于 Arial(HSSF 中的默认字体)和 Calibri(XSSF 中的默认字体)来说也是如此。

参考链接:http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFSheet.html#setColumnWidth(int, int)

  • 好的谢谢!我引用的同一来源说“以 Calibri 字体为例,11 点字体大小的最大数字宽度为 7 像素”。但是,FontMetrics 类使用 Calibri 11pt 返回宽度 0 的值 6。知道是什么导致了这种差异吗? (2认同)