Apache POI - obszar drukowania
W tym rozdziale wyjaśniono, jak ustawić obszar drukowania w arkuszu kalkulacyjnym. Zwykle obszar drukowania w arkuszach kalkulacyjnych Excel znajduje się od lewej górnej do prawej dolnej krawędzi. Obszar drukowania można dostosować do swoich wymagań. Oznacza to, że możesz wydrukować określony zakres komórek z całego arkusza kalkulacyjnego, dostosować rozmiar papieru, wydrukować zawartość z włączonymi liniami siatki itp.
Poniższy kod służy do ustawiania obszaru drukowania w arkuszu kalkulacyjnym.
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");
}
}
Zapiszmy powyższy kod jako PrintArea.java. Skompiluj i uruchom go z wiersza polecenia w następujący sposób.
$javac PrintArea.java
$java PrintArea
Wygeneruje plik o nazwie printarea.xlsx w bieżącym katalogu i wyświetl następujące dane wyjściowe w wierszu polecenia.
printarea.xlsx written successfully
W powyższym kodzie nie dodaliśmy żadnych wartości komórek. W związku z tymprintarea.xlsxjest pustym plikiem. Na poniższym rysunku można jednak zauważyć, że podgląd wydruku przedstawia obszar wydruku z liniami siatki.