gpt4 book ai didi

java - 在 Apache POI 中为生成的 Excel 文件设置默认打印比例

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:36:13 24 4
gpt4 key购买 nike

我成功地通过 Apache POI 生成了一个 Excel 文件。问题是,当我尝试打印时,最后 3 列不在可打印区域内。例如,工作表有 A 到 L 列,但打印时它只适合 A 到列。用户总是在打印前将打印缩放从“无缩放”更改为“在一页上显示所有列”。

enter image description here

如何修改 Excel 文件,使所有列都适合可打印区域,并且用户无需在每次打印时更改缩放比例。

最佳答案

这可以通过组合 Sheet.setFitToPage 来完成和 PrintSetup.setFitWidthPrintSetup.setFitHeight

例子:

import java.io.*;

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.*;

public class PrintSetupFitWidth {

public static void main(String[] args) throws Exception {
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet();

//create at least one cell so print preview is possible
sheet.createRow(0).createCell(0).setCellValue("Cell A1");

//set page setup to fit to one page width but multiple pages height
sheet.setFitToPage(true);
sheet.getPrintSetup().setFitWidth((short)1);
sheet.getPrintSetup().setFitHeight((short)0);

FileOutputStream fileOut = new FileOutputStream("PrintSetupFitWidth.xlsx");
workbook.write(fileOut);
fileOut.close();
workbook.close();
}
}

关于java - 在 Apache POI 中为生成的 Excel 文件设置默认打印比例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41847210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com