ApachePOIで、印刷時の用紙サイズを設定するサンプルです。
用紙サイズを設定するには、PrintSetup#setPaperSize() を使用します。
サンプルソース
例)用紙サイズに「A5」を指定する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
import java.io.FileOutputStream; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.PrintSetup; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class PoiSample { public static void main(String[] args) { //Excelデータ生成 Workbook wb = new XSSFWorkbook(); //ブックの生成 Sheet sh = wb.createSheet(); //シートの生成 //文字のセット Row row = sh.createRow(0); //行の生成 Cell cell = row.createCell(0); //セルの生成 cell.setCellValue("用紙サイズ指定"); //文字のセット //用紙サイズを設定する PrintSetup ps = sh.getPrintSetup(); ps.setPaperSize(PrintSetup.A5_PAPERSIZE); //A5を指定 //Excelファイル準備 FileOutputStream out = null; String path = "C:¥¥temp¥¥sample.xlsx"; try { //Excel出力 out = new FileOutputStream(path); wb.write(out); System.out.println("Excelが生成されました。"); } catch (Exception ex) { ex.printStackTrace(); } finally { try { wb.close(); out.close(); } catch (Exception ex2) { ex2.printStackTrace(); } } } } |
以下のように用紙サイズが設定されます。
指定できる用紙サイズ
よく使用される用紙サイズの定数は以下の通りです。
A3 | PrintSetup.A3_PAPERSIZE |
A4 | PrintSetup.A4_PAPERSIZE |
A5 | PrintSetup.A5_PAPERSIZE |
B4 | PrintSetup.B4_PAPERSIZE |
B5 | PrintSetup.B5_PAPERSIZE |
上記以外の用紙サイズは、以下公式ページをご覧ください。
https://poi.apache.org/apidocs/dev/org/apache/poi/ss/usermodel/PrintSetup.html