当前位置: 首页 > 知识库问答 >
问题:

在Apache POI中为生成的Excel文件设置默认打印缩放

邴景山
2023-03-14

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

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

共有1个答案

丁灿
2023-03-14

这可以通过Sheet.SetFitTopage和PrintSetup.SetFitWidth以及PrintSetup.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();
 }
}
 类似资料:
  • 我正在处理一个JavaFX项目,其中有一堆静态HTML&JS页面,我正在加载,用户可以签出并单击链接等。 现在,通常当我们使用或之类的浏览器时,调用print命令完成打印任务。 但在中发生的情况不一样。我如何在JavaFX的网页呈现机制中启用打印。 以下是我到目前为止的代码: 任何建议或指示都会很好。谢谢你..:-)

  • 问题内容: 我的程序成功创建并填充了Excel(.xls)文件。创建完成后,我希望在系统的默认程序(以Excel为例)中打开新文件。我该如何实现? 对于我想在记事本中打开txt文件的旧程序,我使用了以下命令: 当我尝试将此代码用于Excel文件时,出现以下错误: 有什么建议吗? 问题答案: 尝试使用Desktop.open()而不是Desktop.edit(): 如果Desktop.open()不

  • 我打算使用JAXB从xsd生成类,并使用xsd中的默认值。但当我将xs:boolean元素的默认值设置为“true”时。该值未设置,我得到空指针异常,因为布尔对象值尚未初始化为true。 我做错了什么?我们可以只为xs:string而不是xs:boolean设置默认值吗? 生成的xml文件是这样的: 当我尝试调用函数时: 或 我得到了空指针错误。虽然在我的代码中我已经处理了这个空值。 我只是好奇为

  • 问题内容: 我正在将Apache POI 3.7与Spring MVC 3.1一起使用。 如何在Apache POI中设置Excel默认行高? 我试着和 但这不起作用。 对这个问题有什么建议吗? 谢谢。 问题答案: 我已经在Apache POI的问题跟踪器上发布了此问题,有人确认这是一个错误。 https://issues.apache.org/bugzilla/show_bug.cgi?id=5

  • 如果未设置,我希望默认活动配置文件为。 Spring-boot版本=1.3.5。发行版

  • 打印复合图稿 复合图是一种单页图稿,与您在插图窗口中看到效果的一致 — 换言之,就是直观的打印作业。复合图像还可用于校样整体页面设计、验证图像分辨率以及查找照排机上可能发生的问题(如 PostScript 错误)。 1选择 “文件 ”>“打印 ”。 2从 “打印机 ”菜单中选择一种打印机。若要打印到文件而不是打印机,请选择 “Adobe PostScript® 文件 ”或 “Adobe PDF”。