PDF 압축기 만들기 - 온라인 PDF 문서 압축

이 게시물에서는 C#, Java 및 Python을 사용하여 품질, 크기 및 성능에 대한 완전한 제어를 통해 PDF 파일 크기를 프로그래밍적으로 줄이는 자체 PDF 압축기 도구를 개발하는 방법을 배웁니다. 또한 동일한 API를 사용하여 PDF 문서를 무료로 온라인에서 압축할 수 있는 작동 데모를 시도해 볼 수 있습니다.

PDF 파일 압축은 다양한 경우에 필요합니다. 이메일을 위한 파일 크기를 최적화하든, 로드 시간을 개선하든, 저장 공간을 절약하든, 효율적인 PDF 압축은 큰 차이를 만들 수 있습니다.

PDF 문서 압축 온라인

이 라이브 PDF compressor 도구를 직접 사용해 보고 PDF 문서를 온라인으로 무료로 압축해 보세요:

Image

당신은 그냥 PDF 문서를 업로드하기만 하면 됩니다. 이 프로그램은 몇 초 만에 파일 크기를 줄여주고 다운로드할 준비가 된 더 작고 최적화된 버전을 제공합니다.

이 무료 온라인 PDF 압축기는 뒷면에서 Aspose.PDF 라이브러리에 의해 지원됩니다. 이 가이드에서 작업할 API와 동일한 API를 사용합니다. 따라서 여기에서 보는 것은 프로그래밍 방식으로 구축할 수 있는 것과 정확히 일치합니다.

PDF 문서를 온라인으로 압축하는 방법

  1. Aspose PDF Compressor 웹사이트를 방문하세요.
  2. PDF 파일을 "업로드" 버튼을 클릭하여 업로드하세요.
  3. 여러 개의 PDF 파일이 있는 경우 파일을 정리하세요.
  4. "압축" 버튼을 클릭하여 프로세스를 시작하세요.
  5. 프로세스가 완료되면 압축된 PDF 파일을 다운로드하십시오.

PDF 압축이 작동하는 방식과 Aspose.PDF가 이를 구현하는 방법

PDF 파일은 고해상도 이미지, 포함된 글꼴, 추가 객체 및 메타데이터를 포함할 수 있으며, 이는 파일 크기를 증가시킬 수 있습니다. 압축은 시각적 품질이나 내용의 정확성을 희생하지 않고 크기를 줄입니다. 우리는 Aspose.PDF를 사용하여 PDF 문서를 최적화할 것입니다. 이는 C#, Java 및 Python에서 PDF 문서를 생성, 편집 및 처리하기 위한 강력한 라이브러리입니다. 개발자는 Adobe Acrobat을 요구하지 않고도 텍스트, 이미지, 양식, 주석 및 디지털 서명, 변환 및 압축과 같은 더 복잡한 작업을 수행할 수 있습니다.

Aspose.PDF는 유연한 OptimizationOptions 클래스를 사용하여 압축을 처리하며, 이미지 전용 조정을 위한 ImageCompressionOptions도 함께 사용됩니다.

  1. 이미지 압축

문서의 이미지들은 파일 크기를 증가시키는 주요 원인 중 하나입니다. Aspose.PDF는 다음의 ImageCompressionOptions 클래스 속성을 사용하여 이미지를 압축하고 크기를 조정할 수 있도록 합니다:

  • CompressImages = true
  • ImageQuality = 70 (0–100)
  • ResizeImages = true
  • MaxResolution = 150
  1. 객체 및 스트림 정리

중복 요소와 사용되지 않는 데이터 스트림이 제거되어 파일을 간소화합니다. Aspose.PDF에서 OptimizationOptions 클래스는 다음 최적화 설정을 제공합니다:

  • CompressObjects = true
  • RemoveUnusedObjects = true
  • RemoveUnusedStreams = true
  1. 중복 스트림 링크하기

A PDF 문서는 중복 스트림(예: 반복되는 폰트나 이미지)을 가질 수 있습니다. Aspose.PDF는 다음 설정을 사용하여 콘텐츠에 영향을 주지 않으면서 내부적으로 이를 연결하여 공간을 절약할 수 있습니다:

  • LinkDuplicateStreams = true
  1. 글꼴 최적화

PDF 문서에 전체 글꼴 세트가 포함될 가능성이 있으며, 단지 몇 개의 문자만 사용되더라도 그렇습니다. Aspose.PDF를 사용하면 다음 옵션을 통해 사용하지 않는 글꼴을 제거할 수 있습니다:

  • UnembedFonts = true
  • SubsetFonts = true
  1. 메타데이터 및 개인 정보 제거

숨겨진 메타데이터와 개인 정보를 제거하여 파일 크기를 줄이고 프라이버시를 보호합니다.

  • RemovePrivateInfo = true

Aspose.PDF는 압축에 대한 완전한 제어를 제공하여 빠르고 효율적이며 생산 준비가 완료된 도구를 구축할 수 있게 해줍니다.

PDF 압축기를 C#을 사용하여 만드는 방법

C#에서 PDF 압축기를 만들기 위해서는 Aspose.Pdf.Optimization 네임스페이스와 OptimizationOptions 클래스를 사용합니다. 다음 예제는 이미지를 압축하고, 구조를 정리하며, 불필요한 데이터를 제거하여 PDF 파일 크기를 줄이는 방법을 보여줍니다.

Step 1: Aspose.PDF for .NET 설치하기

패키지를 NuGet 을 통해 설치하세요:

Install-Package Aspose.PDF

2단계: PDF 로드 및 최적화

아래 코드를 사용하여 PDF를 불러오고, 여러 압축 레이어를 적용한 후 최적화된 버전을 저장하십시오.

using Aspose.Pdf;
using Aspose.Pdf.Optimization;

var document = new Document("MultiplePages.pdf");

// 옵션 최적화 설정
var options = new OptimizationOptions
{
    CompressObjects = true,
    RemoveUnusedObjects = true,
    RemoveUnusedStreams = true,

    MaxResoultion = 150,
    LinkDuplicateStreams = true,

    RemovePrivateInfo = true,
    UnembedFonts = true,
    SubsetFonts = true
};

// 이미지 압축 구성
options.ImageCompressionOptions.CompressImages = true;
options.ImageCompressionOptions.ImageQuality = 50;
options.ImageCompressionOptions.ResizeImages = true;
options.ImageCompressionOptions.MaxResolution = 100;

// 최적화 적용
document.OptimizeResources(options);

// 압축된 출력 저장
document.Save("compressed.pdf");

이 코드는 PDF를 다음과 같이 압축합니다:

  • 이미지 크기 조정 및 최적화
  • 사용하지 않는 객체와 스트림 제거
  • 메타데이터 정리
  • 서브셋팅 및 언임베딩 글꼴
  • 중복 스트림 연결

이미지 품질(ImageQuality) 및 최대 해상도(MaxResolution)와 같은 값을 조정하여 크기와 시각적 품질의 균형을 맞출 수 있습니다.

Java를 사용하여 PDF 압축기를 만드는 방법

Aspose.PDF for Java는 .NET과 유사한 최적화 옵션을 사용하여 PDF 파일을 압축할 수 있습니다. 이미지를 최적화하고, 사용하지 않는 객체를 제거하고, 메타데이터를 정리하여 파일 크기를 줄일 수 있습니다.

1단계: 프로젝트에 Aspose.PDF for Java 추가하기

Maven을 사용하고 있다면, 이 의존성을 추가하세요:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>23.4</version> <!-- Use the latest version -->
    <classifier>jdk17</classifier> <!-- or jdk16, jdk18, etc. -->
</dependency>

JAR 파일을 releases에서 다운로드하세요.

Step 2: Java에서 PDF 파일 압축하기

import com.aspose.pdf.Document;
import com.aspose.pdf.OptimizationOptions;
import com.aspose.pdf.ImageCompressionOptions;

public class PdfCompressor {
    public static void main(String[] args) {
        // Load PDF
        Document pdf = new Document("MultiplePages.pdf");

        // 옵션 최적화 설정
        OptimizationOptions options = new OptimizationOptions();
        options.setCompressObjects(true);
        options.setRemoveUnusedObjects(true);
        options.setRemoveUnusedStreams(true);
        options.setMaxResoultion(150);
        options.setLinkDuplicateStreams(true);
        options.setRemovePrivateInfo(true);
        options.setUnembedFonts(true);
        options.setSubsetFonts(true);

        // 이미지 압축 옵션 설정
        ImageCompressionOptions imageOptions = new ImageCompressionOptions();
        imageOptions.setCompressImages(true);
        imageOptions.setImageQuality(50);
        imageOptions.setResizeImages(true);
        imageOptions.setMaxResolution(100);
        options.setImageCompressionOptions(imageOptions);

        // 최적화하고 저장하세요.
        pdf.optimizeResources(options);
        pdf.save("compressed.pdf");
    }
}

파이썬에서 PDF 파일 압축하는 방법

Aspose.PDF for Python via .NET는 C#와 Java에서 이용할 수 있는 동일한 강력한 최적화 기능에 접근할 수 있게 해줍니다. 이미지 품질을 조절하고, 사용하지 않는 데이터를 제거하며, 내부 구조를 정리함으로써 PDF 파일을 압축할 수 있습니다.

1단계: Aspose.PDF for Python 설치

먼저 pip을 사용하여 패키지를 설치합니다:

pip install aspose-pdf

.NET 6.0+가 설치되어 있는지 확인하세요. 이 패키지는 내부적으로 .NET을 사용합니다.

단계 2: Python에서 PDF 파일 압축하기

import aspose.pdf as ap

# PDF 문서 로드
document = ap.Document("MultiplePages.pdf")

# 옵티마이제이션 옵션 설정
options = ap.OptimizationOptions()
options.compress_objects = True
options.remove_unused_objects = True
options.remove_unused_streams = True
options.max_resoultion = 150
options.link_duplicate_streams = True
options.remove_private_info = True
options.unembed_fonts = True
options.subset_fonts = True

# 이미지 압축 옵션 설정
image_options = options.image_compression_options
image_options.compress_images = True
image_options.image_quality = 50
image_options.resize_images = True
image_options.max_resolution = 100

# 최적화를 적용하고 저장하세요.
document.optimize_resources(options)
document.save("compressed.pdf")

이 스크립트는 이미지를 최적화하고, 글꼴과 구조를 개선하여 PDF를 압축합니다. 따라서 자동화 작업, 클라우드 워크플로 또는 주문형 처리에 적합합니다.

다른 언어와 마찬가지로, 출력 크기와 품질을 더 잘 제어하기 위해 매개변수를 조정할 수 있습니다.

무료 라이센스 받기

당신은 제한 없이 Aspose 제품을 테스트하는 데 관심이 있는 개발자입니까?

당신은 Aspose.PDF 및 기타 Aspose API의 전체 기능을 평가하기 위해 무료 임시 라이선스를 받을 수 있습니다. 퀵하고 쉽고 모든 프리미엄 기능에 접근할 수 있습니다—프로토타이핑, 테스트 또는 개발 워크플로에 통합하기에 완벽합니다.

PDF 크기 줄이기: 무료 리소스

Looking to go further? Here are some free resources to help you expand your knowledge of PDF compression and get the most out of Aspose.PDF.

결론

요약하면, PDF 압축기는 PDF 문서를 온라인으로 압축할 수 있게 해줍니다. PDF 문서를 압축하는 것은 효율적이고 고성능 애플리케이션을 구축하는 데 중요합니다. Aspose.PDF를 사용하면 최적화에 대한 완전한 제어를 할 수 있습니다. C#, Java 또는 Python 중 어떤 언어를 사용하든 상관없습니다.

이 가이드에서는 다음을 탐색했습니다:

  • 온라인 PDF 압축기 실시간 데모
  • Aspose APIs를 사용하여 나만의 PDF 압축 도구를 만드는 방법
  • 플랫폼별 코드 예제들로 빠르게 시작할 수 있도록 도와드립니다.

이 질문이 있거나 추가 도움이 필요하시면, 언제든지 저희의 free support forum 에 연락해 주시기 바랍니다.

See Also