본문 바로가기
개발관련/JAVA

JAVA) Apache Poi 엑셀다운로드 - 페이지 레이아웃 설정하기

by joa-yo 2023. 8. 3.
반응형

안녕하세요 오놀은 엑셀다운로드시 페이지 레이아웃을 설정하는 방법에 대해 알아보겠습니다.

 

/*
* 엑셀파일을 읽어서 workbook생성
* 신규파일을 생성하고싶다면 워크북 생성자에 파일객체를 넣지 않아도 됩니다.
*/
File file = new File("[엑셀파일의 경로를 입력해주세요.]");
XSSFWorkbook workbook = new XSSFWorkbook(file);
Sheet sheet = workbook.createSheet();

//용지 여백설정
sheet.setMargin(PageMargin.TOP, 1.9);
sheet.setMargin(PageMargin.BOTTOM, 1.9);
sheet.setMargin(PageMargin.LEFT, 1.2);
sheet.setMargin(PageMargin.RIGHT, 1.1);
sheet.setMargin(PageMargin.HEADER, 0.8);
sheet.setMargin(PageMargin.FOOTER, 0.8);

//용지 설정 객체
PrintSetup printSetup = sheet.getPrintSetup();
printSetup.setPaperSize(PrintSetup.A4_PAPERSIZE); //A4용지
printSetup.setLandscape(true); //가로세로, true는 가로 false는 세로
printSetup.setScale((short) 70); //화면배율

 

소스에서 용지 여백 설정시 double값을 입력하는데, 이때 이것의 단위와 엑셀 화면상에서 보이는 단위가 다르다. 

 

A = 소스상에서 값
B = 엑셀 페이지설정에서 설정하는 값

B = 2.54A

 

1인치가 2.54cm인 것으로 미루어 짐작하건데,,, inch를 cm로 변환해야 하는 것 같은 느낌이 온다.

 

 

반응형

댓글