In dieser Anweisung wird erläutert, wie Sie ein PDF-Dokument in Java unter den folgenden beiden Gesichtspunkten komprimieren. • Komprimieren Sie den Inhalt des Dokuments • Komprimieren Sie das Bild im Dokument
Komprimieren Sie den Inhalt des Dokuments:
import com.spire.pdf.*;
public class CompressPDF {
    public static void main(String[] args) {
        String inputFile = "Sample.pdf";
        String outputFile = "output/CompressPDFcontent.pdf";
        PdfDocument document = new PdfDocument();
        document.loadFromFile(inputFile);
        document.getFileInfo().setIncrementalUpdate(false);
        document.setCompressionLevel(PdfCompressionLevel.Best);
        document.saveToFile(outputFile, FileFormat.PDF);
        document.close();
        }
    }

Komprimieren Sie das Bild im Dokument
Zunächst wird die Größe des PDF-Dokuments reduziert, indem das Bild des ursprünglichen PDF-Dokuments extrahiert und die Bildqualität verringert wird, um das Bild zu verkleinern, und das reduzierte Bild durch das Bild des Originaldokuments ersetzt wird.
import com.spire.pdf.*;
import com.spire.pdf.exporting.PdfImageInfo;
import com.spire.pdf.graphics.PdfBitmap;
public class CompressPDF {
    public static void main(String[] args) {
        String inputFile = "Sample.pdf";
        String outputFile = "output/CompressPDFImage.pdf";
        PdfDocument document = new PdfDocument();
        document.loadFromFile(inputFile);
        document.getFileInfo().setIncrementalUpdate(false);
        for (int i = 0; i < document.getPages().getCount(); i++) {
            PdfPageBase page = document.getPages().get(i);
            PdfImageInfo[] images = page.getImagesInfo();
            if (images != null && images.length > 0)
                for (int j = 0; j < images.length; j++) {
                    PdfImageInfo image = images[j];
                    PdfBitmap bp = new PdfBitmap(image.getImage());
                    bp.setQuality(20);
                    page.replaceImage(j, bp);
                }
        }
        document.saveToFile(outputFile, FileFormat.PDF);
        document.close();
    }
}

Recommended Posts