Как сжать PDF-документы в Java

PDF — популярный формат файлов для обмена и хранения документов, но иногда они могут быть довольно большими. Это затрудняет их загрузку или отправку по электронной почте, особенно если у вас низкая скорость интернета или ограниченное пространство для хранения. К счастью, есть решение: сжимать PDF-документы. Сжатие PDF-файла позволяет уменьшить его размер без потери качества, что упрощает обмен и хранение важных файлов. В этой статье вы узнаете, как уменьшить размер PDF-документа в Java с помощью Free Spire.PDF for Java.
Установка файла Free Spire.Pdf.jar
Если вы создали Maven-проект, вы можете легко импортировать jar в свое приложение, используя следующие конфигурации. Для проектов, не использующих Maven, загрузите jar-файл по этой ссылке и добавьте его в качестве зависимости в свое приложение.

Сжатие шрифтов и изображений в PDF-документе на Java
Шрифты и высококачественные изображения — два основных фактора, влияющих на размер PDF-документа. Чтобы уменьшить размер PDF-документа, можно сжать ресурсы шрифтов и качество изображений. В следующем примере кода показано, как сжать PDF-документ с помощью Free Spire.PDF for Java.
import com.spire.pdf.conversion.compression.ImageCompressionOptions;
import com.spire.pdf.conversion.compression.ImageQuality;
import com.spire.pdf.conversion.compression.PdfCompressor;
import com.spire.pdf.conversion.compression.TextCompressionOptions;
public class CompressPdfDocument {
public static void main(String[] args) {
//Load a PDF document while initializing the PdfCompressor object
PdfCompressor compressor = new PdfCompressor("C:\Users\Administrator\Desktop\ToCompress.pdf");
//Get text compression options
TextCompressionOptions textCompression = compressor.getOptions().getTextCompressionOptions();
//Compress fonts
textCompression.setCompressFonts(true);
//Unembed fonts
//textCompression.setUnembedFonts(true);
//Get image compression options
ImageCompressionOptions imageCompression = compressor.getOptions().getImageCompressionOptions();
//Set the compressed image quality
imageCompression.setImageQuality(ImageQuality.Low);
//Resize images
imageCompression.setResizeImages(true);
//Compress images
imageCompression.setCompressImage(true);
//Save the compressed document to file
compressor.compressToFile("Compressed.pdf");
}
}
Резюме
В этой статье мы узнали, как использовать Free Spire.PDF для Java для уменьшения размера PDF-документа. Кроме того, компонент поддерживает другие функции обработки PDF, такие как:
Преобразование PDF в изображения в Java