PDF는 왜 파싱이 어려울까? — 구조적 한계와 PDFium 구조 이해
두줄요약
PDF의 좌표 중심 저장 구조와 객체 유형·읽기 순서 문제로 파싱이 어려운 이유를 설명했습니다. PDFium 기반 텍스트·TOC·이미지 추출과 OCR·LLM 후처리 조합을 소개했습니다.
구조와 흐름
- HTML/XML의 의미 태그와 달리 글꼴·크기·좌표 중심으로 저장되는 PDF
- XRef와 압축 스트림을 해제해 페이지·텍스트·이미지·주석 객체를 적재하는 PDF 파서
- PDFium의 문서 로드, 객체 탐색·분류, 텍스트 레이어 추출, 선택적 비트맵 렌더링 흐름
주의할 점
- 아웃라인 텍스트와 스캔본의 문자 코드 부재로 인한 직접 텍스트 추출 한계
- 생성 도구와 내보내기 방식에 따른 저장 순서·사람의 읽기 순서 불일치
- 멀티 컬럼, 비표준 글자, 시각 객체에서 레이아웃 분석과 OCR 필요
적용해볼 점
- 내장 북마크 기반 TOC의 계층·페이지·위치 정보 추출과 heading 구조 부여
- 페이지 객체 순회 기반 이미지 추출 및 GPT-4o 이미지 요약 메타데이터 생성
- RAG용 문서 정제를 위한 OCR, TOC 추출, 레이아웃 분석, LLM 분석 파이프라인 조합





