我有用于 Excel 文件操作的 Apache POI API。 Excel 文件是从 Jasper Report 生成的。从 Jasper Report 生成的 Excel 没问题。我想要的是 Jasper Report 不支持的一些附加功能。就像添加打印页面设置 - 页眉和页脚一样。我忽略了每个 Excel 页面上的边框边距。但是当我添加页眉和页脚时,它们会打印出一些边距。然后观察到 MS Excel 的页面设置页面上有一个复选框。
此处与页边距对齐
复选框控制页眉和页脚的边距。如果选中此复选框,则它将具有与 Excel 页面相同的边距。
问题:如何从 Apache POI 控制此复选框字段?
最佳答案
此功能尚未出现。但是,在 XSSF 文件格式中,您可以使用 CT 类来获取它。我将从这里开始:
Sheet sh = wb.createSheet();
HeaderFooter header = sh.getHeader();
XSSFHeaderFooter xhd = (XSSFHeaderFooter) header;
CTHeaderFooter ctHd = xhd.getHeaderFooter();
ctHd.setAlignWithMargins(true);
这仅适用于 XLSX 文件,我不知道如何使用 XLS 文件。注意我从通用工作簿、工作表和标题开始。但随后将其转换为 XSSF header 以获取底层 CT 类。您可以使用 XSSF 类编写整个应用程序,而不必使用 XSSFHeaderFooter xhd = (XSSFHeaderFooter) header;
。
关于java - Apache POI Excel : Page setup Align with page margins,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42817318/