我试图找到一种方法来在创建ods文件之前(或在文件创建之后-我不介意)为每个单元格设置边框,并为每列设置最佳宽度。 我正在用Java编写程序,并使用jopendocument库创建了包含许多方法和工具的ods文件,但是不幸的是,我在文档中找不到任何方法来设置边框或列的最佳宽度所以我想知道是否有人知道图书馆或这样做的方法。
public static void QuadernoFatture() throws FileNotFoundException, IOException {
fatture.sort(Comparator.comparing(StrutturaFattura::getNumero));
final Object[][] data = new Object[fatture.size()][7];
for(int i=0;i<fatture.size();i++) {
data[i]=new Object[] {fatture.get(i).cliente,fatture.get(i).numero,fatture.get(i).imponibile,fatture.get(i).iva,
fatture.get(i).TotFatt,fatture.get(i).r_a,fatture.get(i).TotPagare};
}
fatture.clear();
String[] columns = new String[] {"CLIENTE" , "N° FATTURA" , "IMPONIBILE" , "IVA" , "TOTALE FATTURA" , "R_ACCONTO" , "TOTALE DA PAGARE"};
TableModel model = new DefaultTableModel(data,columns);
Date now = new Date();
SimpleDateFormat dateFormatter = new SimpleDateFormat("MMMM_yyyy");
final File file = new File("/home/max/Documents/quadernoFatture/QuadernoFatture_" +dateFormatter.format(now).toString()+".ods");
SpreadSheet.createEmpty(model).saveAs(file);
OOUtils.open(file);
}
答案 0 :(得分:1)
我不知道是否可以设置宽度匹配的内容,但是我可以向您展示如何设置列的特定宽度。 替换行:
SpreadSheet.createEmpty(model).saveAs(file);
以行:
SpreadSheet newSpreadSheet = SpreadSheet.createEmpty(model);
newSpreadSheet.getFirstSheet().getColumn(0).setWidth(100);
newSpreadSheet.getFirstSheet().getColumn(1).setWidth(200);
newSpreadSheet.saveAs(file);
编辑:
那是针对1.3版本的。对于1.4rc2版本,请使用:
newSpreadSheet.getFirstSheet().getColumn(0).setWidth(Length.MM(100));
newSpreadSheet.getFirstSheet().getColumn(1).setWidth(Length.INCH(5));