PDF 텍스트 추출: 줄마다 끊긴 글을 바로 쓸 수 있는 원고로 만듭니다
PDF 텍스트 추출은 PDF 안에 들어 있는 글자를 꺼내 메모장·한글·워드에 붙여 넣을 수 있는 글로 바꾸는 작업입니다. PDF 뷰어에서 그냥 복사하면 화면에 보이는 줄 끝마다 줄바꿈이 들어가고, 머리글과 쪽 번호까지 본문 사이에 섞여 나옵니다. 이 도구는 모든 쪽의 글자를 읽은 뒤 같은 문단에 속한 줄을 이어 붙이고, 쪽마다 되풀이되는 머리글·쪽 번호를 빼서 '원고'를 만듭니다. 글자 층이 없는 스캔 쪽은 브라우저 안에서 OCR로 읽습니다.
예를 들어 [예시 열기]를 누르면 가상 공원 조사 보고서 4쪽을 읽습니다. 기본 설정에서 원고는 글자 373자(공백 제외), 문단 11개가 되고, 문단 안의 줄바꿈 8곳을 이었으며, 머리글 3줄과 쪽 번호 3줄을 뺐습니다. 4쪽은 스캔한 그림이라 쪽 지도에 빗금 막대로 나타나는데, [OCR로 1쪽 읽기]를 누르면 그 쪽의 글까지 더해져 글자 463자, 문단 13개, 이은 줄바꿈 10곳, 뺀 줄 8줄이 됩니다. 파일과 결과는 서버로 보내지 않고 이 브라우저 안에서만 처리합니다.
PDF에서 글자를 뽑는 때
- 보고서·논문을 인용하거나 요약할 때: 필요한 쪽만 범위로 골라 문단째 복사하면 줄바꿈을 하나씩 지우는 수고가 없습니다.
- 받은 공문·계약서를 고쳐 다시 쓸 때: 원본 PDF 대신 원고를 한글이나 워드에 붙여 넣고 고칩니다. 원고 칸에서 바로 고친 뒤 복사해도 됩니다.
- 스캔한 서류에서 글을 찾을 때: 복사가 안 되는 스캔 PDF도 OCR로 읽으면 글자를 검색하거나 번역기에 넣을 수 있습니다.
- 글자 수를 재거나 다른 도구에 넣을 때: 원고를 TXT로 저장하거나 복사해 글자 수 세기, 맞춤법 검사, 번역 같은 다음 작업으로 넘깁니다.
쓰는 법
- PDF를 작업면에 끌어 놓거나 [PDF 고르기]를 누릅니다. 열기 비밀번호가 걸린 PDF면 비밀번호 칸이 나타나고, 비밀번호는 이 브라우저 안에서만 씁니다.
- 쪽 지도에서 막대가 차오르며 쪽마다 글자 수가 표시됩니다. 막대가 높을수록 글자가 많은 쪽이고, 빗금 막대는 글자가 없는 쪽입니다.
- 일부 쪽만 필요하면 '뽑을 쪽 범위'에 2, 4-6처럼 적습니다. 비워 두면 모든 쪽을 뽑고, 범위 밖 쪽은 지도에서 흐려집니다.
- 글자 없는 쪽이 있으면 [OCR로 n쪽 읽기]를 누릅니다. 문서 언어를 1~3개 고를 수 있고, 처음 한 번은 엔진과 언어 데이터를 받습니다.
- 원고를 확인하고 [전체 복사], [n쪽 복사], [TXT 저장] 가운데 하나를 누릅니다. 원고를 스크롤하면 오른쪽 원본 쪽이 따라오므로 두 글을 나란히 대조할 수 있습니다.
복사하면 줄이 끊기는 이유와 잇는 규칙
PDF는 문단이 아니라 '이 글자를 쪽의 어느 좌표에 그린다'는 명령으로 글을 저장합니다. 그래서 뷰어는 화면에 보이는 줄 하나를 한 줄로 복사하고, 어디까지가 한 문단인지는 알려 주지 않습니다. 이 도구는 줄의 위치와 글자 크기를 보고 문단을 다시 나눕니다. 줄과 줄 사이가 그 쪽의 평소 줄 간격보다 1.45배 넘게 벌어지거나, 글자 크기가 20% 넘게 바뀌거나(제목과 본문), 줄이 ○·•·1. 같은 목록 기호로 시작하면 새 문단으로 봅니다. 나머지 줄은 아래 규칙으로 잇습니다.
| PDF의 두 줄 | 원고 | 규칙 |
|---|---|---|
| 공원 다섯 곳의 평일과 주말 이용 / 모습을 정리한 | 이용 모습을 정리한 | 한글·영문 줄은 공백 하나를 넣어 잇습니다 |
| 調査員12人が2週間、/ 同じ時間帯に | 2週間、同じ時間帯に | 한자·가나로 끝나거나 시작하는 줄은 공백 없이 붙입니다 |
| well- / known | well-known | 글자 사이 붙임표(-)는 남기고 붙입니다(지우면 원래 붙임표가 있던 낱말이 망가짐) |
| exam(약한 붙임표 U+00AD) / ple | example | 조판 프로그램이 넣은 약한 붙임표는 지우고 붙입니다 |
| …셌습니다. / ○ 조사 기간: … | (새 문단) | 목록 기호로 시작하는 줄은 새 문단입니다 |
원본 쪽 그림에는 뽑은 줄마다 옅은 상자가, 한 문단으로 이은 줄 왼쪽에는 괄호가 그려집니다. 줄바꿈을 PDF 그대로 두고 싶으면 [PDF 줄 그대로]를 누르세요. 표나 시처럼 줄 자체가 의미를 갖는 글은 그쪽이 더 낫습니다. 한글 문서를 글자 단위로 줄을 나누어 만든 PDF는 낱말 중간에서 줄이 끊길 수 있는데, 이 경우 '주말 / 에는'이 '주말 에는'처럼 띄어 이어집니다. PDF에는 그 자리가 낱말 경계였는지 알려 주는 정보가 없으므로, 원고 칸에서 직접 고쳐 주세요.
글자가 안 나오거나 깨지는 PDF
PDF에서 글자가 복사되지 않는 이유는 대개 세 가지입니다. 쪽 지도의 막대 모양을 보면 어느 경우인지 바로 알 수 있습니다.
| 증상 | 원인 | 쪽 지도 | 할 일 |
|---|---|---|---|
| 글자가 하나도 안 나옴 | 종이를 스캔하거나 사진으로 찍어 만든 쪽이라 글자 층 없이 그림만 있음 | 빗금 막대 | [OCR로 읽기] |
| �나 알 수 없는 기호가 나옴 | 글꼴에 글자 대응표(ToUnicode)가 없어 모양은 보여도 어떤 글자인지 알 수 없음(ISO 32000-1 9.10.2) | 테두리 막대(깨짐 의심) | [OCR로 읽기] 또는 [이 쪽 OCR] |
| 파일을 열자마자 거부됨 | 작성자가 '내용 복사·추출' 권한(표 22 비트 5)을 꺼 둠 | 표시 안 함 | 권한 비밀번호가 있으면 PDF 잠금 해제로 제한을 푼 사본을 만든 뒤 넣기 |
복사 금지 제한은 작성자가 정한 사용 조건이므로, 이 도구는 열기 비밀번호로 연 경우에도 그 제한을 그대로 따르고 OCR로 우회하지도 않습니다. 깨짐 의심은 글자의 20% 넘게 대체 문자(�)나 개인 영역 문자일 때 표시합니다. 그보다 적게 깨지거나 엉뚱한 영문자로 바뀌어 나오는 쪽은 자동으로 잡히지 않으니, 원고와 원본 쪽을 대조해 보고 [이 쪽 OCR]을 누르세요.
OCR로 읽는 방법과 정확도
OCR은 Tesseract.js(Tesseract의 브라우저판)로 이 기기에서 실행합니다. 쪽을 먼저 150 dpi 상당으로 그려 읽고, 줄 높이가 22화소보다 작게 나오면(각주처럼 작은 글자) 줄 높이가 30화소쯤 되도록 최대 300 dpi 상당까지 키워 한 번 더 읽은 뒤, 글자 수로 가중한 신뢰도가 높은 결과를 씁니다. Tesseract 설명서는 300 dpi 이상의 그림을 권하지만, 이미 그림으로 저장된 스캔을 원래 해상도보다 키운다고 글자가 선명해지지는 않습니다. 실제로 예시 보고서의 스캔 쪽(200 dpi)을 150 dpi 상당으로 읽으면 숫자와 제목이 모두 맞았지만, 300 dpi 상당으로 키워 읽으면 '화장실(24%)'을 'SHEA (24%)'로, '17%'를 '179'로 읽었습니다.
- 언어: 한국어·English·日本語·Español·Indonesia 가운데 문서에 쓰인 언어를 1~3개 고릅니다. 한국어 문서에 영문 약어가 섞여 있으면 한국어 + English가 알맞고, 쓰지 않은 언어를 더하면 오히려 틀린 글자가 늘 수 있습니다.
- 처음 한 번 받는 데이터: 엔진 약 4.1 MB와 언어마다 1.2~3.0 MB(한국어 1.6 MB, 영어 3.0 MB)입니다. 받은 데이터는 브라우저가 보관하므로 다음부터는 바로 읽습니다.
- 표시: OCR로 읽은 쪽은 쪽 지도에서 점무늬 막대, 원고에서는 '[n쪽 · OCR]'로 표시됩니다. 줄 상자는 파란색으로 그려져 PDF에 원래 있던 글자와 구별됩니다.
- 정확도를 높이려면: 스캔할 때 200~300 dpi, 흑백이나 회색조로 반듯하게 놓고 스캔하세요. 손글씨, 기울어진 사진, 무늬가 깔린 배경은 틀린 글자가 많아집니다.
머리글·쪽 번호를 빼는 기준
[머리글·쪽 번호 빼기]를 켜면, 줄이 3개 이상인 쪽이 3쪽 이상 있을 때 각 쪽의 맨 위·맨 아래 줄(줄이 5개 이상이면 위 2줄·아래 2줄)을 비교합니다. 그 줄이 비교한 쪽의 60% 이상(최소 3쪽)에 나오면 뺍니다. 비교할 때는 글자만 보고 문장 부호·기호·띄어쓰기는 무시합니다. OCR로 읽은 쪽은 가운뎃점(·)이나 띄어쓰기를 조금씩 다르게 읽는 일이 많기 때문입니다. 숫자가 든 줄은 숫자까지 모든 쪽에서 같거나('2026 공원 이용 조사 보고서'), '- 1 -', '- 2 -'나 'Page 1 of 10'처럼 숫자 하나가 쪽마다 하나씩 늘어나는 쪽 번호 꼴일 때만 같은 줄로 봅니다. 그래서 쪽마다 아래에 오는 '소계 57,300원'이나 날짜로 시작하는 거래 줄은 빼지 않습니다.
뺀 줄은 원본 쪽 그림에 빨간 빗금으로 표시됩니다. 장마다 제목이 바뀌는 머리글이나 2쪽짜리 문서의 머리글은 기준에 맞지 않아 남습니다. 그런 줄은 원고에서 직접 지우면 됩니다.
TXT로 저장하면
[TXT 저장]은 원고 칸에 지금 보이는 글(고친 내용 포함)을 '원래 파일 이름_text.txt'로 저장합니다. 인코딩은 UTF-8이고 파일 맨 앞에 BOM(EF BB BF)을 붙이며, 줄바꿈은 CRLF로 바꿉니다. BOM이 있으면 메모장, 한글 프로그램, 엑셀이 파일을 UTF-8로 바로 알아봐 한글·일본어가 깨지지 않습니다. 결과 글은 유니코드 NFC로 정규화하므로, 맥에서 만든 PDF처럼 한글을 자음과 모음으로 나누어 저장한(NFD) 경우에도 한 글자로 합쳐지고, fi 같은 합자는 fi 두 글자로 풀립니다.
표·다단·세로쓰기 문서
이 도구는 PDF에 글자가 저장된 순서대로 줄을 읽습니다. 워드나 LaTeX으로 만든 두 단짜리 논문은 대개 왼쪽 단을 다 쓴 뒤 오른쪽 단을 쓰므로 순서대로 나옵니다. 반면 디자인 프로그램으로 만든 전단·잡지는 글 상자를 만든 순서로 저장되어 순서가 섞일 수 있습니다. 표는 칸 구분 없이 한 행의 글이 공백으로 이어지거나 칸마다 줄이 나뉘어 나오므로, 표를 엑셀로 옮기려면 [PDF 줄 그대로]로 뽑은 뒤 직접 나누는 편이 빠릅니다. 일본어 세로쓰기 쪽은 글자는 나오지만 줄 나눔이 가로쓰기만큼 정확하지 않습니다.
한계와 주의
- 한 번에 PDF 1개, 100 MB·500쪽까지 읽습니다. 더 긴 문서는 PDF 분할로 나눈 뒤 넣으세요.
- 글자만 뽑습니다. 굵게·기울임 같은 서식, 표 구조, 그림, 링크 주소는 원고에 들어가지 않습니다.
- 메모·주석, 양식 칸에 입력한 값은 쪽 내용이 아니라 별도 주석으로 저장되어 있어 뽑지 않습니다.
- OCR 결과에는 틀린 글자가 있을 수 있습니다. 숫자·이름·금액은 반드시 원본 쪽과 대조하세요. 손글씨는 거의 읽지 못합니다.
- 작성자가 복사를 막아 둔 PDF는 뽑지 않습니다. 열기 비밀번호를 모르는 PDF도 열 수 없습니다.
- 낱말 중간에서 줄이 끊긴 한글 문서는 이은 자리에 공백이 들어갈 수 있습니다. 원고 칸에서 고칠 수 있습니다.
기준일 PDF 규격, pdf.js·Tesseract 설명서, 예시 실측은 2026-10-21에 확인했습니다.
출처
- 01ISO 32000-1:2008 Document management — Portable document format (Adobe 공개 사본)9.10 글자 추출과 9.10.2 문자 코드를 유니코드로 바꾸는 방법(ToUnicode), 표 22 사용 권한 비트 5(내용 복사·추출)와 비트 10(접근성 지원용 추출)
- 02pdf.js API — PDFPageProxy쪽의 글자 항목과 위치를 읽는 getTextContent. 이 도구는 pdf.js 3.11.174(Apache-2.0 라이선스)로 글자를 읽고 쪽을 그림
- 03Tesseract 설명서 — Improving the quality of the output300 dpi 이상 그림 권장, 크기 조정·여백·기울기 같은 OCR 품질 요인
- 04Tesseract.js브라우저 안에서 Tesseract OCR을 실행하는 라이브러리. 이 도구는 7.0.0판과 kor·eng·jpn·spa·ind 언어 데이터를 씀(Apache-2.0 라이선스)
- 05Unicode Standard Annex #15 — Unicode Normalization Forms분해된 한글 자모와 악센트를 합치는 NFC 정규화
자주 묻는 질문
스캔한 PDF도 글자를 뽑을 수 있나요?
뽑을 수 있습니다. 스캔한 쪽은 글자 없이 그림만 들어 있어 쪽 지도에 빗금 막대로 표시됩니다. [OCR로 읽기]를 누르면 문서 언어를 골라 브라우저 안에서 글자를 읽고, 그 쪽은 원고에 '[n쪽 · OCR]'로 표시됩니다. OCR 결과에는 틀린 글자가 있을 수 있으니 숫자와 이름은 원본 쪽과 대조하세요.
PDF에서 복사하면 줄마다 끊기는데, 한 번에 이어 붙일 수 있나요?
이어 붙일 수 있습니다. 기본 설정인 [문단으로 잇기]가 줄 간격과 글자 크기로 문단을 다시 나누고, 같은 문단의 줄은 한글·영문이면 공백 하나로, 한자·가나면 공백 없이 잇습니다. 줄바꿈을 PDF 그대로 두려면 [PDF 줄 그대로]를 누르세요.
PDF에서 텍스트가 복사되지 않는 이유는 무엇인가요?
대개 세 가지 가운데 하나입니다. 스캔한 그림이라 글자 층이 없거나, 글꼴에 글자 대응표(ToUnicode)가 없어 모양만 있고 어떤 글자인지 알 수 없거나, 작성자가 내용 복사를 막아 두었기 때문입니다. 앞의 두 경우는 OCR로 읽을 수 있고, 복사 금지 제한은 권한 비밀번호로 제한을 푼 사본에서만 뽑을 수 있습니다.
비밀번호가 걸린 PDF도 글자를 뽑을 수 있나요?
열기 비밀번호를 알고 있다면 뽑을 수 있습니다. PDF를 넣으면 비밀번호 칸이 나타나고, 비밀번호는 이 브라우저 안에서만 씁니다. 다만 작성자가 내용 복사를 막아 둔 PDF는 열기 비밀번호로 열었더라도 뽑지 않으니, 권한 비밀번호로 PDF 잠금 해제에서 제한을 푼 사본을 만든 뒤 넣으세요.
저장한 TXT를 한글 프로그램이나 메모장에서 열면 글자가 깨지나요?
깨지지 않습니다. TXT는 UTF-8로 저장하고 맨 앞에 BOM을 붙여, 메모장·한글 프로그램·엑셀이 인코딩을 바로 알아봅니다. 줄바꿈도 Windows 방식(CRLF)으로 저장합니다.
표나 두 단으로 된 논문은 순서대로 나오나요?
PDF에 글자가 저장된 순서대로 나옵니다. 워드나 LaTeX으로 만든 두 단 논문은 대개 왼쪽 단, 오른쪽 단 순서로 나오지만 디자인 프로그램으로 만든 문서는 섞일 수 있습니다. 표는 칸 구분 없이 나오므로 [PDF 줄 그대로]로 뽑은 뒤 직접 나누는 편이 빠릅니다.
파일이 서버로 올라가나요?
올라가지 않습니다. PDF를 읽고 글자를 뽑는 일과 OCR이 모두 이 브라우저 안에서 이루어집니다. OCR을 처음 쓸 때 엔진과 언어 데이터를 내려받을 뿐이고, 파일 내용이나 원고는 어디에도 보내지 않습니다.
반복 머리글을 빼기로 했는데 머리글이 그대로 남아요.
머리글은 줄이 3개 이상인 쪽이 3쪽 이상이고, 같은 줄이 그런 쪽의 60% 이상에서 맨 위·아래에 나올 때만 뺍니다. 장마다 제목이 바뀌는 머리글이나 2쪽짜리 문서의 머리글은 기준에 맞지 않아 남으니 원고 칸에서 직접 지우세요. 뺀 줄은 원본 쪽 그림에 빨간 빗금으로 표시됩니다.