Tips & Tricks

Linux 컴퓨터에서 PDF를 압축하는 방법

PDF로 작업하는 Linux 사용자는 정기적으로 익숙한 좌절감을 경험합니다. 검색 결과를 지배하는 압축 도구와 튜토리얼은 Windows 및 macOS용으로 작성되었으며, Linux용 명령줄 대안은 일관되지 않은 문서와 함께 다양한 패키지에 분산되어 있습니다. Linux에서 PDF를 압축하는 것은 무료 오픈 소스 도구를 사용하여 완전히 달성할 수 있으며, 대부분의 경우 Linux 명령줄 접근 방식은 다른 플랫폼의 그래픽 도구보다 압축 매개 변수를 더 세밀하게 제어할 수 있습니다. 이 프로세스에는 작업에 적합한 도구를 선택하고 파일 크기와 시각적 품질의 균형을 맞추는 압축 옵션을 이해하는 과정이 포함됩니다.

How to Compress a PDF on a Linux Computer

명령줄 PDF 압축을 위해 Ghostscript 사용

Ghostscript는 Linux에서 가장 강력하고 널리 사용 가능한 PDF 처리 도구로, 많은 배포판에 사전 설치되어 있으며 모든 패키지 관리자를 통해 사용할 수 있습니다. 출력 해상도, 이미지 압축 설정 및 PDF 호환성 수준을 지정하는 명령줄 호출을 통해 PDF를 압축할 수 있습니다. 기본 압축 명령은 gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=compressed.pdf input.pdf입니다. PDFSETTINGS 매개변수는 Ghostscript가 특정 다운샘플링 및 인코딩 선택으로 해석하는 4가지 사전 설정 값의 압축 수준을 제어합니다.

화면 사전 설정은 이미지를 72 DPI로 다운샘플링하여 가장 작은 파일을 생성하며, 인쇄 품질이 필요하지 않은 화면 읽기에만 적합합니다. 전자책 사전 설정은 150DPI로 다운샘플링되어 태블릿과 노트북에서 읽을 문서에 적합한 균형을 유지합니다. 프린터 사전 설정은 300DPI로 다운샘플링하여 인쇄 품질을 유지하면서도 의미 있는 압축을 달성합니다. 시험 인쇄 사전 설정은 무손실 압축을 적용하고 전문적인 인쇄를 위한 색상 프로필을 유지하여 사전 설정 중에서 가장 큰 파일을 생성합니다. Linux에서 대부분의 PDF 압축 요구 사항에 대해 전자책 또는 프린터 사전 설정은 올바른 절충안을 제공합니다.

WukongPDF

PDF 압축을 사용해 보세요

설치가 필요하지 않습니다. 브라우저에서 직접 작동합니다.

시작하기 →

경량 대안으로 ps2pdf 사용

대부분의 Linux 배포판에서 Ghostscript 패키지의 일부로 제공되는 ps2pdf 스크립트는 동일한 기본 기능에 대해 더 간단한 명령줄 인터페이스를 제공합니다. ps2pdf input.pdf output.pdf를 실행하면 매개변수 구성이 필요 없이 기본 압축 최적화 세트가 적용됩니다. 기본 설정은 Ghostscript 프린터 사전 설정과 동일하며 화면 보기와 인쇄 모두에 적합한 파일을 생성합니다. 이 제로 구성 접근 방식은 출력을 미세 조정할 필요가 없을 때 빠른 압축에 유용합니다.

더 많은 제어를 위해 ps2pdf는 명령줄을 통해 Ghostscript 매개변수를 허용합니다. ps2pdf -dPDFSETTINGS=/ebook input.pdf output.pdf를 실행하면 ebook 사전 설정이 Ghostscript로 전달됩니다. ps2pdf -dPDFSETTINGS=/screen -dDownsampleColorImages=true -dColorImageResolution=100 input.pdf output.pdf를 실행하면 컬러 이미지 다운샘플링을 구체적으로 사용자 정의합니다. 이러한 사용자 정의 매개변수의 PDF 크기 줄이기 효과는 사전 설정보다 더 공격적일 수 있지만 사용자 정의 설정을 배치에 적용하기 전에 항상 단일 파일의 출력을 테스트하십시오.

구조적 압축을 위해 qpdf 사용

Ghostscript 및 ps2pdf는 PostScript 해석기를 통해 PDF 내용을 다시 렌더링하므로 무손실 설정에서도 미묘한 렌더링 변경이 발생할 수 있습니다. Qpdf는 페이지 콘텐츠를 다시 렌더링하지 않고 PDF 파일의 구조적 최적화를 수행하는 다른 접근 방식을 취합니다. qpdf --linearize --object-streams=generate --recompress-flate input.pdf output.pdf 명령은 중복된 개체를 제거하고 더 나은 압축 비율로 압축된 스트림을 재생성하며 보다 효율적인 읽기를 위해 파일 구조를 재구성합니다. Qpdf 압축은 실제로 무손실이며 페이지 픽셀은 원본과 동일합니다.

Qpdf는 각 편집 세션에서 사용되지 않은 개체와 차선의 스트림 압축이 남을 수 있으므로 여러 번 편집된 PDF에 특히 효과적입니다. 여러 차례의 편집을 거친 PDF에서 qpdf를 실행하면 표시되는 내용에 대한 변경 없이 20~30% 더 작은 파일이 생성되는 경우가 많습니다. qpdf 도구는 모든 주요 Linux 배포판의 패키지 관리자를 통해 사용할 수 있으며 렌더링 단계를 완전히 건너뛰기 때문에 Ghostscript보다 훨씬 빠르게 파일을 처리합니다. 원본에 대한 완벽한 픽셀 충실도가 필수인 PDF 압축의 경우 qpdf가 선호되는 도구입니다.

일괄 PDF 압축을 위한 쉘 스크립트 작성

명령줄에서 단일 PDF를 압축하는 것은 빠릅니다. 50개의 PDF로 구성된 폴더를 한 번에 하나씩 압축하는 것은 지루한 작업입니다. 짧은 쉘 스크립트는 디렉토리의 모든 PDF를 처리하는 루프에서 압축 명령을 래핑합니다. 기본 스크립트는 for 루프입니다: for f in *.pdf; do gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile="compressed_$f" "$f";; 완료. 이렇게 하면 파일 이름에 접두어가 추가된 각 PDF의 압축 복사본이 생성되어 원본은 그대로 유지됩니다.

프로덕션 용도로 스크립트에 오류 검사를 추가합니다. 압축을 시도하기 전에 입력 파일이 존재하고 읽을 수 있는지 확인하십시오. 출력 파일이 성공적으로 생성되었고 압축 후 파일 크기가 0이 아닌지 확인하십시오. 나중에 검토할 수 있도록 각 파일의 원본 파일 크기, 압축된 파일 크기 및 압축 비율을 텍스트 파일에 기록합니다. 잘 작성된 배치 압축 스크립트는 수동 명령줄 작업 시간을 절약하고 정확히 어떤 파일이 언제, 얼마나 압축되었는지에 대한 기록을 제공합니다. WukongPDF와 같은 도구는 그래픽 작업 흐름을 선호하는 Linux 사용자를 위해 브라우저 인터페이스를 통해 일괄 PDF 크기 축소 기능을 제공합니다.

Linux GUI에서 PDF 압축 사용

명령줄보다 그래픽 인터페이스를 선호하는 Linux 사용자에게는 PDF 압축을 위한 몇 가지 옵션이 있습니다. 대부분의 패키지 관리자를 통해 사용할 수 있는 PDF 정렬기는 PDF 페이지 재정렬, 삭제 및 회전을 위한 시각적 인터페이스를 제공하며 내보내기 기능에는 이미지를 다운샘플링하는 압축 옵션이 포함되어 있습니다. Xournal++는 노트북 인터페이스에서 PDF를 열고 주석이 달린 문서를 압축된 PDF로 내보낼 수 있습니다. LibreOffice Draw는 PDF를 열고 PDF 내보내기 대화 상자를 통해 압축 설정을 적용하여 내보낼 수 있습니다.

브라우저 기반 PDF 압축 도구는 운영 체제와 관계없이 브라우저에서 실행되므로 Linux, Windows 및 macOS에서 동일하게 작동합니다. 선호하는 브라우저 기반 도구를 열고, PDF를 업로드하고, 압축 수준을 선택하고, 결과를 다운로드하세요. 이러한 OS 독립적 접근 방식은 명령줄 도구를 설치, 구성 및 업데이트하거나 올바른 압축 유틸리티를 찾기 위해 패키지 관리자를 검색할 필요가 없기 때문에 Linux에서 특히 편리합니다.

Linux에서 압축 결과 확인

PDF를 압축한 후 Linux 기본 도구를 사용하여 출력 품질을 확인합니다. poppler-utils 패키지의 일부인 pdfinfo 명령은 원본 파일과 압축 파일의 페이지 수, 페이지 크기 및 PDF 버전을 표시하여 페이지 구조가 손상되지 않았는지 확인합니다. ImageMagick의 식별 명령은 개별 페이지를 이미지로 추출하고 해당 픽셀 크기를 보고할 수 있으므로 다운샘플링으로 인해 이미지 해상도가 예상되는 양만큼 감소했는지 확인할 수 있습니다.

시각적 품질 확인을 위해 Evince, Okular 또는 선호하는 Linux PDF 뷰어의 두 인스턴스에서 원본 PDF와 압축 PDF를 나란히 엽니다. 텍스트와 이미지가 모두 포함된 페이지를 200% 이상으로 확대합니다. 텍스트 가장자리의 선명도와 사진 영역의 JPEG 압축 아티팩트 유무를 비교합니다. 압축된 버전의 품질 저하가 눈에 띄게 나타나면 다운샘플링 해상도와 JPEG 품질 임계값을 높이는 고품질 사전 설정 또는 사용자 정의 Ghostscript 매개변수를 사용하여 압축을 다시 실행하세요.

이미지별 압축을 위해 ImageMagick 사용

PDF 파일 크기가 몇 개의 큰 이미지로 구성되어 있는 경우 Ghostscript를 통해 전체 PDF를 압축하면 텍스트와 벡터 부분에 과도한 작업이 될 수 있습니다. ImageMagick은 PDF 내의 특정 이미지를 대상으로 지정할 수 있습니다. poppler-utils 패키지의 일부인 pdfimages를 사용하여 대형 이미지를 추출합니다. 특정 이미지 유형에 맞게 조정된 품질 및 크기 조정 매개변수를 사용하여 변환 명령을 사용하여 추출된 각 이미지를 개별적으로 압축합니다. 그런 다음 img2pdf 도구를 사용하여 압축된 이미지를 새 PDF로 재조립합니다.

압축에 대한 이러한 수술적 접근 방식은 텍스트 레이어가 다시 렌더링되지 않기 때문에 텍스트 선명도를 완전히 유지합니다. 이미지만 수정됩니다. 선명한 벡터 텍스트와 불필요하게 고해상도 사진을 결합한 PDF의 경우 파일 크기가 크게 줄어들 수 있습니다. 예를 들어 텍스트 문서에 1200DPI 사진이 포함된 PDF는 텍스트는 그대로 두고 사진만 300DPI로 다운샘플링하여 80% 이상 줄일 수 있습니다.

압축 중에 그래픽 피드백을 선호하는 Linux 사용자를 위해 PDF Compressor는 원본 및 압축 출력을 나란히 미리 볼 수 있는 Ghostscript 압축을 위한 시각적 인터페이스를 제공하는 Flathub를 통해 사용할 수 있는 GTK 기반 응용 프로그램입니다. 일괄 처리를 지원하고 재사용을 위해 압축 프로필을 저장합니다.

Linux에서 이메일을 통해 배포되는 PDF의 경우 mutt 명령은 명령줄에서 직접 파일 첨부를 지원합니다. 압축한 후 ls -lh를 사용하여 압축된 파일 크기를 확인하고 수신자 이메일 서버 첨부 파일 제한(대부분의 공급자의 경우 일반적으로 25MB) 미만인지 확인하세요. 파일이 여전히 너무 큰 경우 보내기 전에 pdftk 또는 qpdf를 사용하여 PDF를 더 작은 섹션으로 분할하는 것이 좋습니다.

모든 Linux 배포판에서 사용할 수 있는 poppler-utils 패키지에는 PDF 페이지를 이미지 형식으로 변환하는 pdftoppm이 포함되어 있습니다. 이는 개별 페이지를 다시 조립하기 전에 이미지별 압축 도구를 개별 페이지에 적용하려는 경우 중간 단계로 유용할 수 있습니다.

서버 환경에서 자동화된 PDF 압축을 위해 cron 작업 또는 시스템 타이머에서 Ghostscript를 호출하여 일정에 따라 들어오는 PDF를 처리할 수 있습니다. 명령줄 접근 방식을 사용하면 자동화가 간단해집니다.

Linux 기본 PDF 압축 도구는 쉘 스크립팅의 유연성과 결합되어 모든 운영 체제에서 사용할 수 있는 가장 강력하고 사용자 정의 가능한 PDF 압축 환경을 제공합니다.

이러한 유연성과 제어 기능 덕분에 대규모 문서 컬렉션을 정기적으로 처리하는 모든 사람이 PDF 압축에 대한 Linux 접근 방식을 배울 가치가 있습니다.

WukongPDF

PDF 압축을 사용해 보세요

설치가 필요하지 않습니다. 브라우저에서 직접 작동합니다.

시작하기 →