결론부터 말하면, 툴릿에서 일반 PDF 페이지를 합치는 동안 이번 실험에서는 화질 저하가 측정되지 않았습니다. 여러 장의 종이를 한 파일철에 순서대로 끼우듯 원래 페이지를 새 PDF에 옮겼기 때문입니다. 테스트한 문서에서는 검색 가능한 글자와 이미지 데이터가 그대로 유지됐습니다.
다만 모든 서비스가 같은 방식으로 처리하는 것은 아닙니다. 페이지를 복사하지 않고 래스터화(문서 전체를 하나의 픽셀 이미지로 다시 만드는 처리)하거나 이미지 압축을 함께 적용하면 결과가 달라질 수 있습니다.
툴릿의 실제 병합 경로를 확인하기 위해 글자·벡터 중심, 이미지 중심, 글자와 이미지가 섞인 PDF를 만들었습니다. 페이지 크기와 검색 가능한 문자뿐 아니라 PDF 안에 저장된 이미지 데이터의 픽셀 크기·실제 데이터 크기·SHA-256 해시(데이터가 같은지 확인하는 디지털 지문)를 비교하고, 완성본을 다시 다섯 번 연속 병합해 변화가 누적되는지도 확인했습니다.
이번 조건에서는 화질 저하가 측정되지 않았습니다
1536×1024 이미지 데이터 두 개의 크기와 디지털 지문이 병합 전후 및 5회 재병합 뒤에도 일치했습니다.
검색 가능한 문자 추출 결과와 서로 다른 세 페이지의 가로·세로 크기가 모두 원본과 같았습니다.
결과는 원본 합계보다 1,253바이트 작았지만 이미지 스트림은 같아 문서 포장 구조의 차이로 해석할 수 있습니다.
화면 비교보다 내부 데이터까지 확인했습니다
- 1
pdf-lib 1.17.1로 A4 글자·벡터 문서, 1536×1024 PNG가 들어간 가로 A4 문서, Letter 크기의 글자·이미지 혼합 문서를 각각 한 페이지로 만들었습니다.
- 2
툴릿 PDF 합치기와 같은 방식으로 각 원본을 읽고 copyPages로 페이지를 복사한 뒤 useObjectStreams 옵션으로 3페이지 결과를 저장했습니다.
- 3
원본과 결과의 페이지 가로·세로 크기를 비교하고 PDF.js로 추출한 문자 문자열이 페이지별로 같은지 확인했습니다.
- 4
Image XObject(PDF 안에 저장된 이미지 데이터)의 가로·세로 픽셀 수, 실제 데이터 크기와 SHA-256 해시(디지털 지문)를 비교해 이미지가 다시 압축됐는지 확인했습니다.
- 5
첫 결과의 세 페이지를 새 PDF로 복사하는 과정을 다섯 번 더 반복해 페이지 크기, 문자와 이미지 스트림의 변화가 누적되는지 확인했습니다.
어떤 PDF를 병합했나
실험은 2026년 8월 24일 Node.js 24.14.1과 툴릿 운영 코드에 고정된 pdf-lib 1.17.1 조합으로 진행했습니다. 실제 사용자 문서의 개인정보나 저작물을 사용하지 않고 결과를 다시 만들 수 있도록 직접 생성한 세 종류의 한 페이지 PDF를 사용했습니다.
이미지 중심 문서와 혼합 문서에는 같은 1536×1024 PNG를 각각 한 번씩 넣었습니다. 따라서 병합 전 두 이미지 스트림과 병합 후 두 이미지 스트림을 일대일로 비교할 수 있습니다.
| 원본 | 페이지 특성 | 페이지 크기 | 파일 크기 |
|---|---|---|---|
| 글자·벡터 | 검색 가능한 글자, 선, 사각형 | 595.28×841.89pt | 1,162바이트 |
| 이미지 | 1536×1024 PNG 한 장 | 841.89×595.28pt | 2,097,784바이트 |
| 혼합 | 검색 가능한 글자와 같은 PNG | 612×792pt | 2,098,041바이트 |
병합 전후 측정 결과
세 원본의 합계는 4,196,987바이트였고 병합 결과는 4,195,734바이트였습니다. 결과가 1,253바이트, 약 0.03% 작아졌지만 이것만으로 압축이나 화질 저하를 뜻하지는 않습니다. PDF를 새로 저장하면 카탈로그, 객체 번호, 상호 참조와 객체 스트림 같은 문서 포장 구조가 다시 만들어질 수 있기 때문입니다.
중요한 증거는 PDF 안에 저장된 이미지 데이터입니다. 병합 전후 모두 각 PNG 기반 Image XObject가 1536×1024 픽셀, 2,096,814바이트였고 SHA-256 해시(디지털 지문)도 일치했습니다. 압축된 이미지 데이터가 바이트 단위로 같았으므로 이 실험 경로에서는 이미지를 다시 압축하거나 해상도를 낮추지 않았습니다.
| 확인 항목 | 병합 결과 | 해석 |
|---|---|---|
| 페이지 수 | 1+1+1 → 3페이지 | 선택한 세 페이지 모두 포함 |
| 페이지 크기 | 세 페이지 모두 원본과 동일 | A4 가로·세로와 Letter 크기 유지 |
| 검색 가능한 문자 | 페이지별 추출 문자열 동일 | 글자가 한 장의 이미지로 바뀌지 않음 |
| 내장 이미지 | 크기·길이·SHA-256 동일 | 테스트 이미지 스트림 재압축 없음 |
| 전체 파일 크기 | 1,253바이트 감소 | 화질이 아닌 문서 구조 오버헤드 차이 |
다섯 번 다시 합치면 손실이 누적될까
첫 병합 결과를 다시 새 PDF로 복사하는 과정을 다섯 번 연속 반복했습니다. 다섯 결과 모두 4,195,734바이트였고 페이지 크기와 이미지 스트림 해시가 유지됐으며, 마지막 결과에서도 처음과 같은 문자열이 추출됐습니다.
이는 이번 페이지 복사 방식이 JPG를 반복 저장하는 것처럼 세대마다 이미지를 재압축하지 않았다는 뜻입니다. 다만 이 결과는 사용한 샘플과 pdf-lib 1.17.1의 copyPages 경로에 대한 관찰이며, 다른 PDF 편집기나 ‘병합과 압축’을 동시에 수행하는 서비스까지 보장하지 않습니다.
그런데도 병합 후 흐려 보일 수 있는 경우
원본 PDF를 페이지 이미지로 렌더링한 뒤 새 PDF를 만드는 방식은 출력 배율과 이미지 압축 설정에 따라 작은 글자와 선이 흐려질 수 있습니다. PDF에 넣기 전에 JPG로 바꾼 사진의 품질이 이미 낮아졌거나, 병합 뒤 별도의 ‘용량 줄이기’를 실행한 경우도 병합 자체와 구분해야 합니다.
뷰어의 확대 배율과 화면 보정 방식 때문에 같은 데이터를 다르게 느낄 수도 있습니다. 의심되면 같은 PDF 뷰어에서 같은 배율로 비교하고, 글자 선택·검색 가능 여부와 이미지 픽셀 크기를 함께 확인하는 편이 정확합니다.
- 병합 도구가 페이지를 복사하는지 이미지로 다시 만드는지 확인합니다.
- 병합과 압축을 한 번에 적용하는 옵션이 켜져 있지 않은지 봅니다.
- 원본 PDF 자체의 스캔 해상도와 JPG 압축 상태를 먼저 확인합니다.
- 파일 크기 증감만으로 화질 유지 여부를 판단하지 않습니다.
화질이 같아도 별도로 확인해야 할 문서 기능
페이지가 눈에 동일하게 보인다고 PDF의 모든 기능이 그대로라는 뜻은 아닙니다. 책갈피, 문서 전체의 태그 구조, 내부 링크 목적지, 입력 양식과 첨부 파일은 페이지 바깥의 문서 구조와 연결될 수 있어 새 문서에서 별도 확인이 필요합니다.
전자서명은 문서 무결성을 증명하므로 서명된 PDF를 편집하거나 새 문서로 조합하는 작업과 특히 잘 맞지 않습니다. 서명·인증·입력 양식이 중요한 문서는 원본을 보관하고, 병합본에서 기능과 유효 상태를 해당 PDF 뷰어로 다시 확인해야 합니다.
판단에 참고한 공식 문서
일반 PDF 병합과 이미지 재압축을 구분하세요
툴릿의 2026년 8월 24일 실험에서는 세 종류의 PDF를 병합하고 결과를 다섯 번 다시 병합해도 페이지 크기, 검색 가능한 문자와 내장 이미지 데이터가 달라지지 않았습니다. 따라서 이 샘플과 현재 페이지 복사 경로에서는 화질 저하가 측정되지 않았습니다.
다만 ‘PDF 합치기’라는 이름만으로 모든 서비스의 처리 방식을 알 수는 없습니다. 결과가 흐려졌다면 페이지 래스터화(문서 전체를 하나의 이미지로 바꾸는 처리), 별도 이미지 압축, 낮은 원본 품질을 먼저 구분하고, 특수 문서는 화질과 별개로 서명·양식·책갈피와 접근성 구조를 확인하는 것이 안전합니다.