PDF 텍스트 추출
다단 읽기 순서를 바로잡아 TXT·Markdown으로 추출
파일은 이 브라우저에서만 처리됩니다. 서버에 업로드하지 않습니다.
다단 읽기 순서를 바로잡아 TXT·Markdown으로 추출
암호가 걸린 PDF입니다.
다른 도구로 이어서 편집
처리하고 있습니다…
모든 처리는 이 브라우저 안에서만 이루어집니다. 파일이 서버로 전송되지 않습니다.
다운로드할 파일이 준비됐습니다
이 결과로 이어서 편집
페이지 미리보기 열기
설정을 바꾸면 이전 결과는 숨겨집니다. 다시 만들어 최신 설정을 저장하세요.
암호화된 PDF는 먼저 암호를 해제하세요. 페이지 콘텐츠 중심으로 처리하며 목차·첨부·양식·서명 보존은 보장하지 않습니다. 원본을 보관하고 결과를 확인하세요.
처리 중…
0.0
멈춘 것이 아닙니다. 계산이 끝나면 결과가 표시됩니다.
PDF 텍스트 추출 소개
PDF 안의 글자는 문장이 아니라 「이 위치에 이 글꼴의 이 글리프를 그려라」는 명령의 목록입니다. 줄이나 단락, 읽는 순서라는 개념은 파일에 없는 경우가 많습니다. 이 도구는 pdf.js로 글자 조각(run)과 위치·크기를 읽은 뒤, 좌표만 보고 줄·단 구분·단락·제목을 다시 짜 맞춥니다.
그래서 결과의 품질은 두 가지에 달려 있습니다. 하나는 PDF가 글리프마다 「이 모양은 유니코드로 무엇인지」를 제대로 적어 두었는지, 다른 하나는 레이아웃이 좌표로 추론 가능한 형태인지입니다. 스캔 PDF처럼 글자 층이 아예 없는 페이지는 빈 결과가 나오고, PDF OCR로 안내합니다.
추출한 한글이 깨지는 이유
PDF에 넣은 글꼴은 대개 쓰인 글자만 잘라 담은 부분집합이고, 본문은 글자 코드가 아니라 그 글꼴 안의 글리프 번호로 적힙니다. 번호를 다시 유니코드로 바꾸는 표가 ToUnicode CMap입니다. 이 표가 없거나 잘못된 PDF에서는 화면에는 「계약서」가 멀쩡히 보여도 복사하면 엉뚱한 한자나 기호, 빈칸이 나옵니다. 모양은 표가 없어도 그릴 수 있기 때문입니다.
Type 3 글꼴은 글자 모양을 PDF 그리기 명령으로 직접 정의한 글꼴이라 유니코드 정보가 아예 없는 경우가 흔합니다. 일부 조판 프로그램이나 오래된 한글 워드프로세서 변환기에서 나옵니다. 이런 PDF는 이 도구든 다른 도구든 텍스트로 뽑아서는 복구할 수 없고, 페이지를 이미지로 보고 OCR하는 편이 빠릅니다. 판별법은 간단합니다. PDF 뷰어에서 한 문장을 복사해 메모장에 붙여 보세요. 거기서 깨지면 추출도 깨집니다.
순서가 뒤섞이는 이유와 이 도구가 순서를 정하는 법
PDF는 글자를 그리는 순서를 자유롭게 정할 수 있습니다. 두 단 논문에서 왼쪽 단 첫 줄 다음에 오른쪽 단 첫 줄을 그리는 파일도 있고, 머리글·각주를 맨 마지막에 그리는 파일도 있습니다. 파일 속 순서를 그대로 이으면 두 단의 줄이 번갈아 섞입니다.
이 도구는 파일 순서를 버리고 XY-cut으로 순서를 새로 정합니다. 글자를 가로 띠로 쌓고, 여러 띠에 걸쳐 같은 위치에 빈 세로 틈(단 간격)이 이어지면 그 영역을 여러 단으로 보고 틈에서 자른 뒤 각 단 안에서 다시 같은 일을 합니다. 결과는 위 영역부터, 한 영역 안에서는 왼쪽 단부터입니다. 본문 가운데를 가로지르는 그림 캡션이나 단을 넘나드는 표는 틈이 끊겨 순서가 어긋날 수 있습니다.
회전된 글자와 세로쓰기 글자는 가로 본문의 단 분석에서 빼서 따로 읽습니다. 90° 돌린 도면 주석이나 표 머리처럼 기울어진 글자는 각도별로 모아 그 방향의 줄로 읽고, 세로쓰기 일본어는 오른쪽 열부터 위에서 아래로 읽어, 둘 다 그 페이지의 가로 본문 뒤에 별도 문단으로 붙습니다. 원래 자리(표 칸 등)에 끼워 넣지는 않습니다.
띄어쓰기와 줄바꿈을 복원하는 규칙
많은 PDF는 공백 문자를 저장하지 않고 글자 사이를 띄워서 그립니다. 이 도구는 앞뒤 글자 사이 간격이 글자 크기의 0.12배를 넘으면 공백을 넣습니다. 한글·한자·가나끼리는 원래 글자폭이 넉넉해 오탐이 많아서 기준을 0.22배로 높였습니다. 자간을 크게 준 제목은 「제 목」처럼 벌어질 수 있습니다.
줄은 기준선이 글자 크기의 35% 안에서 같으면 한 줄로 묶습니다. 「줄바꿈 합치기」에서는 줄 끝의 영어 하이픈(exam-/ple)을, 문서 안에 이어 쓴 단어(example)가 있거나 뒷부분이 -tion·-ment 같은 접미사일 때만 되돌리고 그 밖에는 하이픈을 남깁니다(well-/known → well-known). 그리고 일본어·중국어 줄 사이에는 공백 없이 잇습니다. 한글은 줄 끝이 어절 끝인 경우가 대부분이라 공백으로 잇습니다.
머리글·쪽 번호·제목은 어떻게 가려내나
페이지 위아래 12% 띠에 있는 줄을 숫자를 #으로 바꿔 비교하고, 전체 페이지의 절반 이상(최소 2쪽)에 같은 줄이 있으면 머리글·바닥글로 빼냅니다. 「- 12 -」 「12 / 40」 「12쪽」 같은 단독 쪽 번호도 뺍니다. 제목은 문서 전체 본문 크기의 1.15배 이상이고 3줄·160자 이하인 블록이며, 크기 순으로 Markdown 제목 1~4단계를 매깁니다.
예시
두 단 논문
- 입력
왼쪽·오른쪽 단 사이에 약 18pt 여백, 파일 속 그리기 순서는 줄마다 좌우 교대- 결과
왼쪽 단 전체 → 오른쪽 단 전체
여백 폭이 한 글자 크기(em) 이상이고 여러 줄에 걸쳐 이어지므로 단 경계로 인식됩니다.
한글 공백 판정
- 입력
10pt 한글 두 글자 사이 간격 1.5pt- 결과
공백 없음
기준은 10×0.22 = 2.2pt입니다. 같은 1.5pt라도 영문 사이였다면 기준 1.2pt를 넘어 공백이 들어갑니다.
40쪽 보고서의 머리글
- 입력
모든 쪽 맨 위에 「2026 사업계획 | 3」 식의 줄- 결과
본문에서 제외(머리글)
숫자를 #으로 바꾸면 모든 쪽에서 같은 문자열이 되고, 필요 횟수 20쪽(40×0.5)을 넘습니다.
사용 방법
- PDF를 넣으면 페이지별 단 수와 글자 층 유무를 보여 줍니다.
- TXT/Markdown, 줄바꿈 처리, 머리글 제거 여부를 고릅니다.
- 미리보기로 순서를 확인하고 복사하거나 파일로 받습니다.
자주 묻는 질문
복사하면 한글이 □나 이상한 한자로 나와요.
PDF에 글리프를 유니코드로 바꾸는 ToUnicode 정보가 없거나 틀린 경우입니다. 추출로는 고칠 수 없으니 PDF OCR로 글자를 다시 인식하세요.
결과가 비어 있습니다.
스캔이나 사진으로 만든 페이지라 글자 층이 없는 경우입니다. PDF OCR로 텍스트 층을 넣은 뒤 다시 추출하세요.
표 내용이 한 줄에 뒤섞여 나옵니다.
이 도구는 단락 글을 위한 것입니다. 표는 PDF 표 추출 도구가 칸 경계를 따로 찾아 줍니다.
제목 글자가 띄엄띄엄 나옵니다.
자간을 넓힌 제목은 글자 간격이 공백 기준을 넘습니다. 제목은 짧으니 결과에서 직접 고치는 편이 빠릅니다.
관련 가이드
출처
- ISO 32000-1:2008 (PDF 1.7) — 9.10 Extraction of Text Content (ToUnicode CMaps), 9.6.5 Type 3 Fonts
- Mozilla pdf.js
기준일: