728x90
반응형
POI로 엑셀을 만들어 다운로드하여 열어봤더니
"허용되는 글꼴 수가 초과되어 이 파일에 글꼴 서식이 제대로 적용되지 않을 수 있습니다."
라는 오류가 떴다.
엑셀에서는 적용되는 글꼴의 개수를 최대 512개로 제한하고 있다.
글꼴을 512개 이상 사용했다면 이 오류가 날 수 있다.
Excel 2007이상에서는 경고창을 닫고 작업을 계속 할 수 있지만, Excel 2003과 Excel 2002에서는 수정 및 저장이 안된다.
글꼴을 1개만 사용했는데도 이 오류가 나는 경우 CellStyle을 적용할 때 매번 font객체를 생성하지 않았는지 보자.
private CellStyle getCellStyle(String div) {
CellStyle style = null;
HSSFFont font = this.wb.createFont();
font.setBold(true);
return style;
}
이렇게 매번 font를 생성할 경우 Cell개수만큼 글꼴이 있는 것으로 여겨진다.
font를 매번 생성하지 않도록 하면 오류가 나지 않는다.
//field에 선언
private HSSFWorkbook workbook;
private HSSFFont font;
private CellStyle getCellStyle(String div) {
if(this.font == null){
this.font = this.workbook.createFont();
}
// ...
}
728x90
반응형
'java' 카테고리의 다른 글
[java] Functional Interface : Consumer, Predicate 알아보기 (0) | 2022.08.04 |
---|---|
[eclipse] unable to start within 45 seconds 오류 해결 (0) | 2022.07.20 |
[java] Lambda 람다란? (0) | 2022.06.10 |
[Java] JDK 설치하기 (0) | 2022.02.26 |
[spring] @RequestBody, @ResponseBody 란, 스프링 데이터 주고받기 (0) | 2021.11.30 |