Apache POI - Область печати

В этой главе объясняется, как установить область печати в электронной таблице. Обычная область печати в таблицах 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это пустой файл. Но вы можете заметить на следующем рисунке, что предварительный просмотр печати показывает область печати с линиями сетки.