有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何将文件设置为“在一个页面上适合所有列”设置

我有一个要求,由ApachePOI生成的文件需要生成具有fit all columns on one page setting集的fie。我已经尝试了API的一系列变体,但到目前为止我还没能做到。我也不知道是否能做到

似乎setFitToPage(true)函数同时调整了高度和宽度的大小,而不仅仅是我想要的宽度。使用setFitWidthsetFitHeight就像我在其他各种堆栈溢出问题中发现的那样,似乎不会影响任何事情

以下是我到目前为止的情况:

public void setPrintSettings(Sheet sheet) {

   sheet.setFitToPage(true); //this will resize both height and width to fit
   sheet.getPrintSetup().setLandscape(true);

   sheet.getPrintSetup().setFitWidth((short) 1);
   sheet.getPrintSetup().setFitHeight((short) 1);

}

共 (1) 个答案

  1. # 1 楼答案

    并不是调用setFitToPage(true)使Excel调整高度和宽度以适应一个页面。这个电话是必要的,但原因不同。在Excel的页面设置屏幕中,此方法调用控制对话框中哪个单选按钮处于活动状态。值true设置“适合:”的单选按钮,允许您通过页面高框控制页面宽。值false设置“调整到:”,正常大小百分比的单选按钮

    在本例中,您希望通过“不在乎”页面的高度将其调整为1页宽。用于页面高度(setFitHeight方法)的值在此处为0

    sheet.setFitToPage(true);
    PrintSetup ps = sheet.getPrintSetup();
    ps.setFitWidth( (short) 1);
    ps.setFitHeight( (short) 0);
    

    当我用这些设置写出包含SheetWorkbook并在Excel中打开它时,页面设置对话框中选择了“适合:”单选按钮和“1页宽(空白)高”。在“打印预览”屏幕中,打印设置选项列出所选的“一页上的所有列”