ryong.logryong.log
PSPDFKit과 동일한 기능을 내부 라이브러리로 배포해보자 배너
2026년 3월 31일·읽는 데 약 1분

PSPDFKit과 동일한 기능을 내부 라이브러리로 배포해보자

관련 글

OpenClaw로 hotfix 대응팀을 만들어봤습니다

2026. 3. 6.

물리법칙을 통한 ChainPicker 컴포넌트 UX 개선기

2026. 2. 27.

음성인식 기반 아동 영어 교육 서비스 RockieTalkie

2024. 12. 30.

문제 상황

  • TOPIA Live 서비스에서는 학생이 과제를 사진으로 찍어 업로드하는 제출 방식을 제공했습니다. 그러나 모바일로 촬영 후 업로드하는 과정이 비효율적이었기 때문에, 교재 PDF를 편집기에서 직접 열어 과제를 수행할 수 있도록 PSPDFKit 라이브러리를 도입했습니다.
  • 다만 PSPDFKit은 유료 구독형 PDF 뷰어/편집 라이브러리로, TOPIA Live 규모의 서비스에서 감당하기에는 비용 부담이 컸습니다. 그렇다고 동일한 기능을 직접 개발하기에는 공수가 너무 많이 들어 현실적으로 어려운 상황이었습니다.
  • 어느 날, 한 학부모로부터 아이가 PDF 과제를 하는 도중 이상한 글자가 보인다는 제보를 받았습니다. 확인해본 결과, PSPDFKit의 라이선스 만료로 인해 워터마크가 노출되고 있었으며, 워터마크가 PDF에 포함되어 저장되는 문제까지 발생하였습니다.
  • 서비스 신뢰도에 직접적으로 영향을 줄 수 있는 문제였기에, 빠르게 원인을 분석하고 대안을 모색해야 했습니다.

[heading_4] — 지원하지 않는 블록 타입
  • 원인을 파악해보니, PSPDFKit의 정식 라이선스가 아닌 Trial Key를 사용하고 있었으며, 해당 키는 일정 주기마다 갱신이 필요했습니다. 그러나 담당자 변경 과정에서 이 갱신 작업이 인수인계되지 않았고, 결과적으로 키가 만료되면서 워터마크가 노출된 것이었습니다.

[heading_4] — 지원하지 않는 블록 타입

[heading_4] — 지원하지 않는 블록 타입

[heading_4] — 지원하지 않는 블록 타입

  • PSPDFKit과 동일한 기능을 내부 라이브러리로 배포해보자
  • 문제 상황