문서·데이터 라이브러리Document & data libraries

pdf-text-position-table-extract

좌표가 있는 텍스트 조각(x, 기준선, 크기, 글자)에서 표를 복원합니다. 빈 칸은 제자리에 남깁니다.

GitHub에서 보기View on GitHub

어떤 문제를 푸나The problem

PDF나 캔버스의 텍스트 레이어는 행과 열이 아니라 좌표가 붙은 글자 조각만 줍니다. 이 함수는 x 위치를 열 앵커로, 기준선을 행으로 묶어 격자를 채우고, 비어 있는 칸이 뒤쪽 열을 왼쪽으로 밀어 올리지 않게 제자리에 빈 문자열로 남깁니다. 결과는 곧바로 CSV나 스프레드시트 행으로 바꿀 수 있는 문자열 배열입니다.

이런 분께 맞습니다Who it is for

PDF 텍스트에서 표 데이터를 뽑는 도구를 만드는 개발자.

무엇을 하나What it does

  • tableRows(regions)는 최대 10,000개 조각을 받아 string[][]를 돌려줍니다.
  • max(3, 0.35×크기)보다 가까운 조각은 같은 열로 묶이며 중복 조각은 제거하지 않습니다.
  • 비정상 좌표(±1e7 초과)와 잘못된 조각은 오류, 빈 입력은 빈 표입니다.

직접 돌려 본 출력Real output

저장소의 examples 폴더를 실행한 결과입니다.

$ node examples/quickstart.mjs
[["Item","Qty","Price"],["Bolt","","1.20"],["Nut","40","0.30"]]
[] <- empty input is an empty table, not a document

알아둘 한계Limits

  • 위치 기반 휴리스틱입니다. 병합 셀, 회전 텍스트, 여러 줄 셀은 별도의 레이아웃 모델이 필요합니다.

받아서 쓰기Get it

# 저장소를 받습니다
git clone https://github.com/Kein-chronicle/pdf-text-position-table-extract.git

# Claude Code 스킬로 쓰려면 이 폴더 이름으로 받습니다
git clone https://github.com/Kein-chronicle/pdf-text-position-table-extract.git ~/.claude/skills/positional-table-extract

정보Info

분류Category
문서·데이터 라이브러리Document & data libraries
형태Type
라이브러리Library
라이선스License
MIT
필요한 것Requires
Node.js 22 이상
저장소Repository
pdf-text-position-table-extract
토픽Topics
pdf table-extraction ocr javascript esm csv text-layout zero-dependencies

2026-10-18 기준: 저장소의 테스트를 로컬에서 실행해 통과했고, 예제 출력은 저장소의 examples 폴더를 실제로 실행한 결과입니다.

공유하기Share

문자Message 네이버 블로그Naver Blog X Facebook