Wie man PDF-Dateien in Java komprimiert

Komprimieren von PDF-Dateien in Java

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF ermöglicht Java-Entwicklern die Komprimierung von PDF-Dateien durch Verringerung der Bildqualität und Skalierung der Auflösung, wodurch die Dateigröße für eine einfachere Weitergabe und Speicherung reduziert wird.

Quickstart: Komprimieren einer PDF-Datei in Java

```java {title="PDF in Java komprimieren"} //:path=/static-assets/pdf/content-code-examples/java/how-to/compress-pdf-java-tutorial/quickstart-compress.java import com.ironsoftware.ironpdf.*; import java.nio.file.Paths;

// Laden Sie Ihr PDF-Dokument PdfDocument pdf = PdfDocument.fromFile(Paths.get("source.pdf"));

// Bilder auf 60% Qualität komprimieren pdf.compressImages(60);

// Speichern Sie die komprimierte PDF-Datei pdf.saveAs(Paths.get("compressed.pdf"));


<div class="hsg-featured-snippet">
<h3>Minimaler Arbeitsablauf (5 Schritte)</h3>

1. Fügen Sie IronPDF als Abhängigkeit zu Ihrem Maven `pom.xml` hinzu
2. Laden Sie Ihr PDF mit `PdfDocument.fromFile()`
3. Bilder mit `pdf.compressImages(60)` komprimieren
4. Optional Bildauflösung mit `pdf.compressImages(90, true)` skalieren
5. Das komprimierte PDF mit `pdf.saveAs()` speichern
</div>

PDF-Dokumente werden weit verbreitet zum Teilen und Speichern von Informationen verwendet, aber bildlastige Dateien können schnell Dutzende von Megabyte erreichen. Große Dateigrößen erschweren die Zustellung per E-Mail, verlangsamen Uploads und erhöhen die Speicherkosten. Die Java-Komprimierungs-API von IronPDF adressiert dies, indem Sie die eingebettete Bildqualität reduzieren und die Auflösung in wenigen Codezeilen skalieren können.

Dieser Artikel behandelt, wie man PDF-Dateien in Java mit IronPDF komprimiert. Die Beispiele zeigen sowohl einfache qualitätsbasierte Komprimierung als auch Auflösungsverkleinerung, sodass Sie den Ansatz an Ihre spezifischen Größen- und Qualitätsanforderungen anpassen können. Wenn Sie auch mit [bilderreichen PDFs](https://ironpdf.com/java/how-to/java-pdf-to-image-tutorial/) arbeiten oder [zusammengeführte Dokumente](https://ironpdf.com/java/how-to/java-merge-pdf-tutorial/) verarbeiten müssen, ist die Komprimierung ein wesentlicher Schritt vor der Verteilung.

## Was ist die IronPDF Java PDF-Bibliothek?

IronPDF ist eine [Java PDF-Bibliothek](/java/), die PDF-Dokumente programmatisch erstellt, liest und manipuliert. Die Bibliothek behandelt die [HTML-zu-PDF-Konvertierung](https://ironpdf.com/java/tutorials/html-to-pdf/), das Ausfüllen von Formularen, die Einbettung von Bildern und die Dateikomprimierung, ohne dass ein PDF-Viewer oder eine externe Rendering-Engine erforderlich ist. Sie unterstützt verschiedene Bereitstellungsumgebungen einschließlich [AWS Lambda](https://ironpdf.com/java/get-started/aws/), [Azure Functions](https://ironpdf.com/java/get-started/azure/) und [Google Cloud](https://ironpdf.com/java/get-started/google-cloud/).

Die Komprimierung in IronPDF funktioniert, indem eingebettete Bilder auf ein niedrigeres JPEG-Qualitätsniveau neu abgetastet werden und optional ihre Auflösung reduziert wird, um der Anzeigegröße im PDF zu entsprechen. Text, Vektorgrafiken und die Dokumentenstruktur werden nicht beeinträchtigt. Dies macht IronPDF zu einer praktischen Wahl für große Dokumente, die schnell per E-Mail übertragen oder in cloudbasierten Systemen gespeichert werden müssen.

Die Bibliothek funktioniert auch gut neben anderen Dokumentenoperationen: Sie können ein PDF komprimieren, das bereits [Wasserzeichen](https://ironpdf.com/java/how-to/custom-watermark/), [Hintergrundebenen](https://ironpdf.com/java/how-to/background-foreground/) und [Lesezeichen](https://ironpdf.com/java/how-to/bookmarks/) enthält, und all diese Funktionen bleiben nach der Komprimierung erhalten.

Hinweis:Die Komprimierung ist bei PDFs am effektivsten, die eingebettete JPEG- oder PNG-Bilder enthalten. Dokumente, die hauptsächlich aus Text und Vektorgrafiken bestehen, werden nur eine minimale Größenreduzierung erfahren.
## Wie richte ich IronPDF in einem Java Maven-Projekt ein? Bevor Sie PDFs komprimieren, fügen Sie IronPDF zur Maven-Konfiguration Ihres Projekts hinzu. Für vollständige Einrichtungsanweisungen siehe die [Einführungsübersicht](https://ironpdf.com/java/docs/). - Um IronPDF in ein [Maven-Projekt](/java/docs/) zu installieren, fügen Sie das `IronPDF`-Maven-Repository und die Abhängigkeit zu Ihrer `pom.xml`-Datei hinzu. - Die Abhängigkeit zum <code>&lt;dependencies&gt;</code> Abschnitt hinzufügen: ```xml //:path=/static-assets/pdf/content-code-examples/java/how-to/compress-pdf-java-tutorial/maven-dependency.xml <dependency> <groupId>com.ironsoftware</groupId> <artifactId>ironpdf</artifactId> <version>your_version_here</version> </dependency>
  • Ihre pom.xml speichern und mvn install ausführen, um die IronPDF-Abhängigkeit herunterzuladen.

Sobald die Abhängigkeit aufgelöst ist, können Sie IronPDF-Klassen in Ihrem Projekt importieren und verwenden. Die neueste veröffentlichte Version des IronPDF-Java-Artefakts ist auf Maven Central verfügbar. Für die Bereitstellung in der Produktion konfigurieren Sie Ihren Lizenzschlüssel, bevor Sie ausführen.

Wie komprimiere ich eine PDF-Datei in Java?

IronPDF komprimiert PDF-Dateien, indem die eingebetteten Bilder im Dokument gezielt werden. Die Methode compressImages() akzeptiert eine Qualitätsinteger von 0 bis 100, wobei niedrigere Werte kleinere Dateien auf Kosten der Bildschärfe erzeugen. Ein optionaler zweiter Parameter weist die Bibliothek an, die Bildauflösung basierend auf der Anzeigegröße auf der PDF-Seite zu verkleinern.

//:path=/static-assets/pdf/content-code-examples/java/how-to/compress-pdf-java-tutorial/compress-pdf-images.java
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) throws IOException {
        // Load the source PDF from disk
        String src = "C:\\Image based PDF.pdf";
        PdfDocument pdf = PdfDocument.fromFile(Paths.get(src));

        // First pass: compress images to 60% quality
        // Lower values produce smaller files with more visible quality loss
        pdf.compressImages(60);
        pdf.saveAs(Paths.get("assets/document_compressed.pdf"));

        // Second pass (optional): compress to 90% quality with resolution scaling
        // The second parameter scales image resolution down to match display size,
        // which can reduce file size further but may cause distortion in some PDFs
        pdf.compressImages(90, true);
        pdf.saveAs(Paths.get("C:\\Compressed.pdf"));
    }
}
//:path=/static-assets/pdf/content-code-examples/java/how-to/compress-pdf-java-tutorial/compress-pdf-images.java
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) throws IOException {
        // Load the source PDF from disk
        String src = "C:\\Image based PDF.pdf";
        PdfDocument pdf = PdfDocument.fromFile(Paths.get(src));

        // First pass: compress images to 60% quality
        // Lower values produce smaller files with more visible quality loss
        pdf.compressImages(60);
        pdf.saveAs(Paths.get("assets/document_compressed.pdf"));

        // Second pass (optional): compress to 90% quality with resolution scaling
        // The second parameter scales image resolution down to match display size,
        // which can reduce file size further but may cause distortion in some PDFs
        pdf.compressImages(90, true);
        pdf.saveAs(Paths.get("C:\\Compressed.pdf"));
    }
}
JAVA

Der Code lädt ein PDF von der Festplatte und wendet die Komprimierung in zwei Durchgängen an, um verschiedene Strategien zu veranschaulichen. Der erste compressImages(60)-Aufruf verringert die Bildqualität auf 60 % und speichert das Ergebnis. Der zweite Aufruf verwendet 90% Qualität, aktiviert jedoch die Auflösungsverkleinerung, wodurch die Pixelabmessungen jedes Bildes angepasst werden, um seiner sichtbaren Fläche auf der Seite zu entsprechen.

Die Methode compressImages() hat zwei Signaturen:

  • compressImages(int quality) — Resampelt alle eingebetteten Bilder auf das angegebene JPEG-Qualitätsniveau. Verwenden Sie einen Wert zwischen 40 und 80 für eine starke Größenreduzierung, während die Bilder erkennbar bleiben.
  • compressImages(int quality, boolean scaleImageResolutionToVisibleSize) — Fügt eine Auflösungsskalierung hinzu. Wenn true, erkennt die Bibliothek Bilder, die mit einem Bruchteil ihrer nativen Auflösung gerendert werden, und skaliert sie entsprechend herunter. Diese Option bietet die aggressivste Größenreduzierung, erhöht jedoch die Verarbeitungszeit leicht.

TippsWenden Sie mehrere Durchgänge an, um das Gleichgewicht zwischen Größe und Qualität fein abzustimmen. Beginnen Sie mit einer moderaten Einstellung wie 70%, überprüfen Sie die Ausgabedateigröße und entscheiden Sie dann, ob ein zweiter Durchgang bei niedrigerer Qualität gerechtfertigt ist.

Ein 60%-Komprimierungsdurchlauf bei einem bilderreichen PDF reduziert typischerweise die Dateigröße um 50-70%, abhängig von den Quellbildern. Ein Dokument mit hauptsächlich Textinhalt wird deutlich kleinere Gewinne sehen. Vergleichen Sie die Vorher- und Nachher-Dateigrößen im Ausgabeverzeichnis, um das Ergebnis für Ihre spezifischen Dokumente zu bewerten.

Für Dokumente, die neben der Kompression weitere Verarbeitung benötigen, unterstützt IronPDF Text extrahieren, Bilder extrahieren und PDFs aufteilen.

Wie sieht das Original-PDF aus?

Datei-Explorer zeigt Original-PDF-Datei mit 458 KB vor der Kompression mit IronPDF

Was sind die Ergebnisse nach der Komprimierung?

Datei-Explorer zeigt komprimierte PDF-Ausgabedatei mit deutlich reduzierter Dateigröße nach IronPDF compressImages bei 60% Qualität

Icon Quote related to Was sind die Ergebnisse nach der Komprimierung?

Meine Lieblingsbibliothek dieser Art ist IronPDF. Es ermöglicht eine schnelle und effiziente Bearbeitung von PDF-Dateien. Es verfügt auch über viele wertvolle Funktionen, wie das Exportieren in das PDF/A-Format und das digitale Signieren von PDF-Dokumenten.

Milan Jovanovic related to Was sind die Ergebnisse nach der Komprimierung?

Milan Jovanovic

Microsoft MVP

Fallstudie ansehen
Icon Quote related to Was sind die Ergebnisse nach der Komprimierung?

IronOCR bedeutet, dass wir jährlich 40.000 $ durch manuelle Verarbeitung einsparen können, während die Produktivität gesteigert wird und Ressourcen für wichtige Aufgaben freigesetzt werden. Ich würde es sehr empfehlen.

Brent Matzelle related to Was sind die Ergebnisse nach der Komprimierung?

Brent Matzelle

Technischer Leiter, OPYN

Fallstudie ansehen
Icon Quote related to Was sind die Ergebnisse nach der Komprimierung?

Die Iron Suite spielt eine entscheidende Rolle in unseren Operationen. Diese Werkzeuge erhöhen die Effizienz im gesamten Unternehmen, einschließlich der Erstellung von Grundrissen und der Verbesserung des Bestandsmanagements.

David Jones related to Was sind die Ergebnisse nach der Komprimierung?

David Jones

Leitender Software-Ingenieur, Agorus Build

Fallstudie ansehen

Wie wähle ich die richtige Komprimierungsqualitätseinstellung?

Die Wahl des richtigen Qualitätsniveaus erfordert ein Gleichgewicht zwischen Dateigröße und visueller Treue. Die richtige Einstellung hängt vom Zweck des Dokuments und der Empfindlichkeit der eingebetteten Bilder ab.

Die folgende Tabelle gibt praktische Richtlinien für häufige Anwendungsfälle:

IronPDF Bildkomprimierungs-Qualitätsstufenführer
Qualitätsstufe Ca. Größenreduzierung Am besten für
80–100 % 10–30 % Druckqualitätsdokumente, medizinische Aufzeichnungen, rechtliche Einreichungen
60–79 % 40–60 % Interne Berichte, Web-Download-PDFs, E-Mail-Anhänge
40–59 % 60–75 % Miniaturansichts-Vorschauen, Entwurfsdokumente, Archivexemplare
Unter 40% 75 %+ Stark degradierte Ausgabe; generell nicht zur Verteilung empfohlen

Die Auflösungsverkleinerung funktioniert am besten, wenn das Quell-PDF aus hochauflösenden Fotos oder gescannten Seiten erstellt wurde, das Dokument jedoch nur für die Bildschirmansicht bestimmt ist. In diesen Fällen kann die Verkleinerung der Auflösung die Dateigröße reduzieren, ohne eine wahrnehmbare Veränderung der Qualität bei normalen Zoomstufen. Für weiteren Kontext zu PDF-Bildercodierungsstandards beziehen Sie sich auf die JPEG 2000 Formatdokumentation bei der Library of Congress und die PDF-Bildkomprimierungsdiskussion auf Stack Overflow.

WichtigVermeiden Sie die Komprimierung von PDFs, die digitale Signaturen enthalten. Das Ändern eingebetteter Bilder verändert den binären Inhalt des Dokuments, wodurch vorhandene Signaturen ungültig werden.

Wie reduziere ich die PDF-Dateigröße weiter über die Bildkomprimierung hinaus?

Die Bildkomprimierung behandelt den größten Beitrag zur Dateigröße in den meisten PDFs, aber zusätzliche Techniken können die Größe weiter reduzieren, wenn sie kombiniert werden. IronPDF unterstützt mehrere Ansätze, die compressImages() ergänzen:

Entfernen Sie unnötige Seiten. Das Löschen von Seiten vor der Komprimierung reduziert sowohl Bilddaten als auch Overhead der Seitenstruktur. Verwenden Sie die Beispiele zur Seitenlöschung, um zunächst leere oder überflüssige Seiten zu entfernen.

Entfernen Sie Anmerkungen. Anmerkungsobjekte fügen dem Datei binäre Daten hinzu. Das Entfernen mit der Anmerkungsverwaltungs-API vor dem Speichern kann die Dateigröße merklich reduzieren in Dokumenten mit vielen Markierungen.

Dokumente in großen Mengen verarbeiten. Für Workflows, die viele PDFs komprimieren, listen Sie die Dateipfade auf und wenden compressImages() in einer Schleife an. IronPDF behandelt jedes Dokument unabhängig, daher ist keine spezielle Konfiguration für die Stapelverarbeitung erforderlich - siehe das PDF-Komprimierungsbeispiel als Ausgangspunkt.

Für eine breitere Diskussion von PDF-Optimierungsstrategien dokumentiert die PDF-Dateiformatspezifikation bei der Library of Congress die strukturellen Elemente, die zur Dateigröße beitragen und wie sie reduziert werden können.

Was sind die nächsten Schritte zur Komprimierung von PDFs in Java?

IronPDF's compressImages()-Methode bietet eine praktische Möglichkeit, die PDF-Dateigröße in Java-Anwendungen zu reduzieren. Ein einzelner Methodenaufruf mit einem Qualitätsinteger deckt die meisten Anwendungsfälle ab, und der optionale Auflösungsverkleinerung wird für bilderreiche Quelldateien verwendet, die die aggressivste Reduzierung benötigen.

Beginnen Sie mit einem kostenlosen Test, um die Komprimierung in Ihren eigenen Dokumenten zu testen:

Bereit zu sehen, was IronPDF noch kann? Sehen Sie sich die vollständige Java PDF-Tutorial-Bibliothek hier an: IronPDF Java How-To Guides

Häufig gestellte Fragen

Was ist PDF-Komprimierung und warum ist sie wichtig?

Die PDF-Komprimierung reduziert die Dateigröße, indem eingebettete Bilder neu abgetastet und deren Anzeigeauflösung optional angepasst werden. Kleinere Dateien sind leichter zu versenden, hochzuladen und zu speichern — die Methode compressImages() von IronPDF übernimmt dies in Java-Anwendungen mit einem einzigen Methodenaufruf.

Wie kann ich eine PDF-Datei in Java schnell komprimieren?

Laden Sie Ihr PDF mit PdfDocument.fromFile(), rufen Sie compressImages(60) auf, um die Bildqualität auf 60 % zu reduzieren, und speichern Sie das Ergebnis mit saveAs(). Diese drei Zeilen behandeln den Kernkomprimierungs-Workflow.

Welche Komprimierungsqualität sollte ich für meine PDFs verwenden?

Ein Wert von 60-70 % bietet ein gutes Gleichgewicht zwischen Dateigröße und visueller Qualität für die meisten Dokumente. Verwenden Sie 80-100 % für Druckqualität oder Rechtsunterlagen und 40-59 % nur für Entwürfe oder Miniaturansichten, bei denen die Bildtreue nicht entscheidend ist.

Kann ich PDF-Dateien komprimieren, die mehrere zusammengeführte Dokumente enthalten?

Ja, IronPDF komprimiert jedes PDF unabhängig davon, wie es zusammengestellt wurde. Die Methode compressImages() zielt auf alle eingebetteten Bilder im Dokument ab, unabhängig davon, ob sie aus einer einzigen Quelle stammen oder aus mehreren zusammengeführten Dateien.

Hat die Komprimierung Auswirkungen auf andere PDF-Funktionen wie Wasserzeichen oder Formulare?

Nein — die Komprimierung von IronPDF zielt nur auf eingebettete Rasterbilder ab. Text, Vektorgrafiken, Wasserzeichen, Hintergründe, Lesezeichen und Formularfelder werden im Ausgabedokument beibehalten.

Welche Bereitstellungsumgebungen unterstützen die PDF-Komprimierung mit IronPDF?

IronPDF unterstützt die PDF-Komprimierung auf AWS Lambda, Azure Functions, Google Cloud und Standard-Serverbereitstellungen. Kein externes Render-Engine oder PDF-Viewer sind in diesen Umgebungen erforderlich.

Was macht der Parameter scaleImageResolutionToVisibleSize?

Wenn auf true gesetzt, erkennt IronPDF Bilder, die mit einem Bruchteil ihrer nativen Auflösung gerendert wurden, und skaliert deren Pixelmaße herunter, um sie an die sichtbare Anzeigengröße anzupassen. Dies reduziert die Dateigröße weiter als nur die Qualitätsreduzierung, erhöht jedoch leicht die Verarbeitungsgeschwindigkeit.

Wird durch das Komprimieren eines PDFs dessen digitale Signatur ungültig?

Ja. Das Ändern eingebetteter Bilder verändert den Binärinhalt des Dokuments, was bestehende digitale Signaturen bricht. PDF-Dateien vor dem Anwenden von Signaturen komprimieren, nicht danach.

Darrius Serrant
Full-Stack-Software-Ingenieur (WebOps)

Darrius Serrant hat einen Bachelor-Abschluss in Informatik von der University of Miami und arbeitet als Full-Stack-WebOps-Marketing-Ingenieur bei Iron Software. Seit seiner Jugend vom Programmieren angezogen, sah er die Informatik als sowohl mysteriös als auch zugänglich, was es zum perfekten Medium für Kreativität und Problemlösung ...

Weiterlesen
Bereit anzufangen?
Version: 2026.6 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis?
Führen Sie eine Probe aus Sehen Sie zu, wie Ihr HTML-Code in eine PDF-Datei umgewandelt wird.