目录

Apache POI - 打印区域( Print Area)

本章介绍如何在电子表格中设置打印区域。 通常的打印区域是Excel电子表格中从左上角到右下角。 打印区域可根据您的要求定制。 这意味着您可以从整个电子表格中打印特定范围的单元格,自定义纸张大小,打开打开网格线的内容等。

以下代码用于在电子表格上设置打印区域。

import java.io.File;
import java.io.FileOutputStream;
import org.apache.poi.xssf.usermodel.XSSFPrintSetup;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class PrintArea {
   public static void main(String[] args)throws Exception {
      XSSFWorkbook workbook = new XSSFWorkbook(); 
      XSSFSheet spreadsheet = workbook.createSheet("Print Area");
      //set print area with indexes
      workbook.setPrintArea(
         0, //sheet index
         0, //start column
         5, //end column
         0, //start row
         5 //end row
      );
      //set paper size
      spreadsheet.getPrintSetup().setPaperSize(XSSFPrintSetup.A4_PAPERSIZE);
      //set display grid lines or not
      spreadsheet.setDisplayGridlines(true);
      //set print grid lines or not
      spreadsheet.setPrintGridlines(true);
      FileOutputStream out = new FileOutputStream(new File("printarea.xlsx"));
      workbook.write(out);
      out.close();
      System.out.println("printarea.xlsx written successfully"); 
   }
}

让我们将上面的代码保存为PrintArea.java 。 从命令提示符编译并执行它,如下所示。

$javac PrintArea.java
$java PrintArea

它将在当前目录中生成名为printarea.xlsx的文件,并在命令提示符下显示以下输出。

printarea.xlsx written successfully

在上面的代码中,我们没有添加任何单元格值。 因此printarea.xlsx是一个空白文件。 但是您可以在下图中看到打印预览显示带有网格线的打印区域。

printArea中
↑回到顶部↑
WIKI教程 @2018