我使用apache poi构建了一个java应用程序。 它是一个简单的swing gui应用程序,它使用apache poi库生成excel。生成工作表后我设置了autofit列,当我使用RAD运行应用程序时工作正常。现在我有生成的runnable jar (这是我的要求)并且它生成excel 但是第二列之后的所有列都隐藏在彼此之后。
我删除了自动调整大小列,并且列没有隐藏在彼此之后。但是我想根据文字对我的列进行自动调整。请告诉我使用自动调整大小的正确方法。为什么它在RAD工作而不是在可运行的jar中工作。
我知道这是字体问题。我删除了我设置字体名称的行,它运行良好。现在我的问题是如何使用Calibri字体。请帮忙。
这是我编写excel的代码:
public class Excel {
HSSFWorkbook wb;
HSSFFont head, defFont;
public Excel() {
wb = new HSSFWorkbook);
//create header font to use Calibri and bold text
//create default font to use Calibri and normal text
}
public void sheetGen() {
HSSFSheet sheet = wb.creatSheet("sheet1");
//create style
//create each row and column
for (int i = 1; i < 9; i++) {
if (i != 2)
sheet.autoSizeColumn(i); //this is not working in runnable jar
}
//write workbook
}
}
答案 0 :(得分:1)
在某些平台上,Calibri
是第三方字体;例如,它包含在Mac OS X上的Microsoft Office中。而是使用Java平台定义的五个font families中所需的逻辑字体。例如,
标题:new Font(Font.SansSerif, Font.BOLD | Font.ITALIC, 14)
默认值:new Font(Font.Serif, Font.PLAIN, 12)