การบีบอัดไฟล์ PDF และลดขนาดไม่เพียงช่วยประหยัดพื้นที่จัดเก็บข้อมูล แต่ยังช่วยให้อัพโหลดและดาวน์โหลดได้เร็วขึ้นอีกด้วย ในบล็อกโพสต์นี้ เราจะสำรวจวิธีบีบอัด PDF ใน Java เผยเทคนิคในการลดขนาดไฟล์และเพิ่มประสิทธิภาพโดยรวม
การบีบอัด PDF Java API - การติดตั้ง
คุณสามารถติดตั้งไลบรารีได้จากส่วน ดาวน์โหลด หรือกำหนดค่า Conholdate.Total สำหรับ Java ด้วยการกำหนดค่า Maven ต่อไปนี้:
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>23.10</version>
<type>pom</type>
</dependency>
เหตุใดจึงต้องบีบอัด PDF ใน Java
การอัพโหลดและดาวน์โหลดที่เร็วขึ้น: ขนาด PDF ที่เล็กลงหมายถึงการอัพโหลดและดาวน์โหลดที่เร็วขึ้น ปรับปรุงประสบการณ์ผู้ใช้ และประหยัดแบนด์วิธ
ประสิทธิภาพการจัดเก็บข้อมูล: PDF ที่ถูกบีบอัดใช้พื้นที่ดิสก์น้อยลง ทำให้สามารถจัดการได้มากขึ้นและคุ้มค่าสำหรับโซลูชันการจัดเก็บข้อมูล
ประสิทธิภาพที่ปรับให้เหมาะสม: ไฟล์บีบอัดทำให้เวลาในการโหลดเร็วขึ้น โดยเฉพาะในเว็บแอปพลิเคชัน ส่งผลให้อินเทอร์เฟซผู้ใช้ตอบสนองและมีประสิทธิภาพมากขึ้น
บีบอัด PDF ใน Java
คุณสามารถบีบอัดเอกสาร PDF ใน Java ได้โดยทำตามขั้นตอนด้านล่าง:
- โหลดเอกสาร PDF ต้นฉบับโดยใช้คลาส Document
- บีบอัด PDF ด้วยเมธอด OptimizeResources()
- เรนเดอร์ไฟล์ PDF ที่ถูกบีบอัดด้วยวิธี save()
ข้อมูลโค้ดด้านล่างแสดงวิธีบีบอัด PDF ใน Java:
// เปิดเอกสาร
Document pdfDocument = new Document("Compress.pdf");
// บีบอัดเอกสาร PDF โดยการเพิ่มประสิทธิภาพทรัพยากร
pdfDocument.optimizeResources();
// บันทึกเอกสารเอาท์พุต
pdfDocument.save("Compressed.pdf");
บีบอัด PDF โดยย่อขนาดรูปภาพใน Java
บางครั้งไฟล์ PDF อาจมีรูปภาพจำนวนมากเมื่อสแกนเอกสาร หรือมีแค็ตตาล็อกหรือเนื้อหาภาพอื่นๆ ที่นี่คุณจะได้เรียนรู้วิธีอื่นในการบีบอัดเอกสาร PDF โดยการทำงานกับรูปภาพที่ฝังไว้ ขั้นตอนต่อไปนี้จะอธิบายวิธีการย่อขนาดรูปภาพเพื่อบีบอัดไฟล์ PDF:
- โหลดไฟล์ PDF ต้นฉบับด้วยคลาส Document
- สร้างอินสแตนซ์ของคลาส OptimizationOptions
- ตั้งค่าตัวเลือก CompressImages และคุณภาพของภาพ
- บีบอัดไฟล์ PDF ด้วยวิธี OptimizeResources()
- เขียนเอกสาร PDF ที่ถูกบีบอัดที่อัพเดตด้วยวิธี save()
โค้ดตัวอย่างต่อไปนี้อธิบายวิธีบีบอัด PDF โดยย่อขนาดรูปภาพใน Java:
// เปิดเอกสาร
Document pdfDocument = new Document("Compress.pdf");
// เริ่มต้นตัวเลือกการเพิ่มประสิทธิภาพ
com.aspose.pdf.optimization.OptimizationOptions optimizationOptions = new com.aspose.pdf.optimization.OptimizationOptions();
// ตั้งค่าตัวเลือก CompressImages
optimizationOptions.getImageCompressionOptions().setCompressImages(true);
// ตั้งค่าตัวเลือกคุณภาพของภาพ
optimizationOptions.getImageCompressionOptions().setImageQuality(50);
// บีบอัดเอกสาร PDF โดยใช้ OptimizationOptions
pdfDocument.optimizeResources(optimizationOptions);
// บันทึกเอกสาร PDF ที่บีบอัดที่อัปเดต
pdfDocument.save("Compressed.pdf");
บีบอัดไฟล์ PDF โดยแปลง RGB เป็น Grayscale ใน Java
คุณสามารถบีบอัดไฟล์ PDF ได้โดยแปลงปริภูมิสีจาก RGB เป็น Greyscale ด้วยขั้นตอนต่อไปนี้:
- เปิดอินพุต PDF ด้วยคลาส Document
- แปลง RGB เป็น PDF ระดับสีเทาด้วยคลาส RgbToDeviceGrayConversionStrategy
- เรนเดอร์ไฟล์ PDF ระดับสีเทาด้วยวิธี save()
ข้อมูลโค้ดต่อไปนี้อธิบายวิธีบีบอัด PDF โดยการแปลง RGB เป็น Grayscale ใน Java:
// เปิดเอกสาร
Document pdfDocument = new Document("Compress.pdf");
// แปลง RGB เป็น PDF ระดับสีเทา
com.aspose.pdf.RgbToDeviceGrayConversionStrategy strategy = new com.aspose.pdf.RgbToDeviceGrayConversionStrategy();
for (int idxPage = 1; idxPage <= pdfDocument.getPages().size(); idxPage++) {
com.aspose.pdf.Page page = pdfDocument.getPages().get_Item(idxPage);
strategy.convert(page);
}
// บันทึกไฟล์ PDF ระดับสีเทา
pdfDocument.save("Compressed.pdf");
ใบอนุญาตการประเมินผลฟรี
คุณสามารถขอ [ใบอนุญาตชั่วคราวฟรี] เพื่อทดสอบคุณสมบัติทั้งหมดและประเมิน API ให้เต็มประสิทธิภาพโดยไม่มีข้อจำกัดใดๆ
ห่อ
การบีบอัดไฟล์ PDF เป็นคุณสมบัติสำคัญสำหรับการจัดการไฟล์ที่มีประสิทธิภาพ บทความนี้ครอบคลุมถึงวิธีต่างๆ ในการบีบอัดเอกสาร PDF ใน Java ด้วยการใช้เทคนิคเหล่านี้ คุณสามารถมั่นใจได้ว่า PDF ของคุณไม่เพียงแต่มีขนาดเล็กลงเท่านั้น แต่ยังปรับให้เหมาะสมเพื่อการโต้ตอบที่รวดเร็วยิ่งขึ้นและประสบการณ์ผู้ใช้ที่ได้รับการปรับปรุงอีกด้วย ในกรณีที่คุณมีความคลุมเครือ โปรดเขียนถึงเราที่ ฟอรั่ม