"컨텐츠 기반 PDF 생성 시스템 및 A4 페이징 최적화 알고리즘 구현" 상세 페이지
"컨텐츠 기반 PDF 생성 시스템 및 A4 페이징 최적화 알고리즘 구현"
A4페이징 최적화 알고리즘에 대해 설명해주세요
해설
문제 상황부터 설명드리면, 동적 콘텐츠를 PDF로 변환할 때 텍스트나 이미지가 페이지 경계에서 잘리는 문제가 계속 발생했어요. 특히 표나 차트 같은 요소들이 페이지 중간에서 끊어져서 가독성이 많이 떨어졌거든요.
PDF 생성 전에 임시 컨테이너를 만들어서 측정하는 방식이었어요.
폰트 크기, line-height, margin/padding 등이 모두 반영된 실제 렌더링 크기가 필요했어요
알고리즘 핵심 로직은:
콘텐츠 요소별 높이 측정
- 각 섹션(제목, 텍스트 블록, 표, 이미지)의 실제 렌더링 높이를 미리 계산했어요
페이지 여백 계산
- 현재 페이지에서 사용 가능한 남은 공간을 실시간으로 체크하고 분할 가능성 판단
- 테이블이나 차트 같은
atomic 요소 는 절대 분할하지 않도록 했어요
- 이미지가 클경우에는. 비율을 유지하면서 최대 한페이지가 넘어가지않게 스케일 다운을 했습니다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.