피드로 돌아가기
Dev.toFrontend
원문 읽기
Electron-Python Sidecar 구조 기반의 로컬 OCR PDF 생성 시스템 구축
I built a Windows tool that turns screenshots into one searchable PDF — here's what I learned
AI 요약
Context
이미지 형태의 문서에서 텍스트 검색 및 복사가 불가능한 제약 사항 해결 필요. 기존 Electron 기반 앱의 UI/윈도우 관리 기능을 유지하며 고성능 OCR 기능을 통합해야 하는 설계 과제 직면.
Technical Solution
- 개발 기간 단축을 위해 전체 재작성 대신 Electron Shell과 Python RapidOCR을 조합한 Sidecar 아키텍처 채택
- jimp 라이브러리를 통한 자동 Crop 및 12px Safety Pad 적용으로 텍스트 잘림 방지
- pdf-lib를 활용하여 이미지 레이어 위에 OCR 텍스트 레이어를 정밀하게 주입하는 바인딩 프로세스 설계
- 검색 하이라이트 정확도 향상을 위해 폰트 크기와 0.18em Descent 값을 조정하여 Bounding Box 정렬 최적화
- Windows Defender 스캔으로 인한 I/O 병목 해결을 위해 설정 파일의 메모리 캐싱 전략 도입
실천 포인트
1. 핫 패스(Hot Path) 내 디스크 I/O 최소화 및 메모리 캐싱 적용 여부 검토
2. 이기종 언어 결합 시 Sidecar 패턴을 통한 기능 확장성 확보
3. OCR 구현 시 텍스트 추출뿐 아니라 렌더링 좌표(Baseline, Descent)의 정밀 튜닝 필요성 확인