Farklı kuruluşlar, güvenli ve düzenli bilgi alışverişi için PDF dosyalarını kullanır. Bununla birlikte, bazen resimler, videolar, çizimler vb. gömülü içerikler nedeniyle PDF dosyalarının boyutu çok büyük olabilir. Böyle bir PDF dosyasının boyutunu, kaliteden herhangi bir ödün vermeden kolayca optimize edebilir veya sıkıştırabilirsiniz. Java uygulamalarınıza dahil edebileceğiniz aşağıdaki PDF boyutu sıkıştırma ve optimizasyon senaryolarını inceleyelim:

PDF Boyutu Optimizasyonu ve Sıkıştırma API’si – Kurulum

Büyük boyutlu PDF dosyalarını aynı kaliteyi korurken optimize etmek veya sıkıştırmak için Aspose.PDF for Java API’nin verimli ve güvenilir rutinlerinden yararlanabilirsiniz. JAR dosyalarını İndirilenler’ten veya projenizdeki Maven yapılandırmaları ile indirebilirsiniz.

Java kullanarak Web için PDF Belgelerini Optimize Edin

PDF belgeleri, bunları web sayfalarınızda kullanmanız gerektiğinde optimize edilebilir. Bu optimizasyon, PDF belgesinin ilk sayfasını olabildiğince çabuk görüntülemeye yardımcı olur. Aşağıdaki adımları izleyerek optimize edilmiş PDF dosyasına sahip olabilirsiniz:

  1. Açık kaynaklı PDF dosyası
  2. PDF Optimizasyonu için optimize method çağrısı yapın
  3. Çıktı PDF dosyasını kaydedin

Aşağıdaki kod parçacığı, Java ortamınızda PDF belgelerinin web için nasıl optimize edileceğine bir örnektir:

// Belgeyi aç
Document pdfDocument = new Document("Original.pdf");

// web için optimize et
pdfDocument.optimize();

// Çıkış belgesini kaydet
pdfDocument.save("Optimized_output.pdf");

Java Kullanarak Görüntüleri İçeren PDF’nin Boyutunu Sıkıştırın veya Optimize Edin

Burada ağırlıklı olarak PDF dosyalarının çok fazla resim içerdiği ve bu nedenle boyutlarının çok büyük olduğu senaryoları tartışacağız. Örneğin, farklı uçak modelleri için çizimleri ve küçük veya büyük her bir parça hakkında bilgileri içeren, tüm bileşenlerin görüntüleri veya resimleri olarak dahil edilen bir PDF dosyası. Ayrıca, birçok profesyonel belge, dosyanın ana yapıları olarak görüntüler içerebilir. Bu tür senaryolarda, PDF dosyalarını aşağıdaki yaklaşımlarla sıkıştırabiliriz:

Java Kullanarak Tüm Görüntüleri Küçültme, Sıkıştırma ve Yeniden Boyutlandırma

Görüntüleri küçülterek, sıkıştırarak ve yeniden boyutlandırarak çok sayıda görüntü içeren PDF dosyasının boyutunu küçültebilirsiniz. Dosya boyutunun çoğu artık küçültmeyi planladığımız resimler tarafından kapsandığından, boyut iyileştirmeleri fark edilebilir olabilir. Bir PDF dosyasındaki resimleri veya görselleri küçültmek, sıkıştırmak ve yeniden boyutlandırmak için aşağıdaki adımları izlemeniz gerekir:

  1. Giriş PDF dosyasını yükle
  2. OptimizationOptions nesnesini başlat
  3. Görüntü Kalitesini ve Çözünürlüğü Ayarlayın
  4. optimizeResources yöntemini çağırın
  5. Çıktı PDF belgesini kaydedin

Aşağıdaki kod parçacığı, Java kullanarak PDF dosya boyutunu küçültmek ve en aza indirmek için görüntülerin nasıl küçültüleceğini veya sıkıştırılacağını gösterir:

// Giriş belgesini yükle
Document doc = new Document(dataDir + "Test.pdf");

// OptimizationOptions nesnesini başlat
OptimizationOptions opt = new OptimizationOptions();

// Görüntü sıkıştırmayı etkinleştir
// PDF dosyasındaki görüntülerin kalitesini ve çözünürlüğünü ayarlayın
opt.getImageCompressionOptions().setCompressImages(true);
opt.getImageCompressionOptions().setImageQuality(10);
opt.getImageCompressionOptions().setMaxResolution(150);
opt.getImageCompressionOptions().setResizeImages(true);
doc.optimizeResources(opt);

// Güncellenen dosyayı kaydedin
doc.save(dataDir + "compressingPDFWithImages_out.pdf");

Gömülü Yazı Tiplerini, Kullanılmayan Akışları Kaldırma ve Java Kullanarak Yinelenen Akışları Bağlama

PDF dosya boyutunu küçültmeniz gerektiğinde her bayt önemlidir. Katıştırılmış yazı tipleri, farklı yaklaşımlarla dosya boyutunun küçültülmesine yardımcı olabilir. Örneğin, tüm yazı tiplerini gömebilir veya yalnızca PDF dosyasında kullanılan yazı tipi karakterlerinin alt kümesini tutabilirsiniz. Dosya boyutunu en aza indirmeye yine de yardımcı olacak yazı tiplerinin kısmen kaldırılması olacaktır. Ayrıca, daha fazla yer kazanmak için kullanılmayan akışları kaldırabilir veya yinelenen akışları bağlayabilirsiniz. Bu PDF optimizasyonları, dosya boyutunu önemli ölçüde azaltacaktır. PDF dosya boyutunu optimize etmek ve küçültmek için aşağıdaki adımları izlemeniz gerekir:

  1. Giriş PDF belgesini yükle
  2. OptimizationOptions sınıf nesnesini başlat
  3. Tüm yazı tiplerini veya yazı tiplerinin alt kümesini çıkarın
  4. Yinelenen akışları bağlayın
  5. Kullanılmayan akışları kaldır

Aşağıdaki kod, PDF belgelerinin boyutunu optimize etmek, küçültmek ve en aza indirmek için PDF dosyalarının nasıl sıkıştırılacağını açıklar:

Document doc = new Document(dataDir + "Test.pdf");
OptimizationOptions opt = new OptimizationOptions();

// Herhangi biri
// PDF'deki tüm yazı tiplerini kaldır
opt.setUnembedFonts(true);

//VEYA
// yalnızca kullanılan karakterler için katıştırılmış yazı tiplerini sakla
opt.setSubsetFonts(true);

// yinelenen akışları bağlama
opt.setLinkDuplcateStreams(false);

// Kullanılmayan akışları kaldır
opt.setRemoveUnusedStreams(false);

// Kullanılmayan nesneleri kaldırın
opt.setRemoveUnusedObjects(false);

doc.optimizeResources(opt);

// Güncellenen dosyayı kaydedin
doc.save(dataDir + "compressingPDF.pdf");

Şimdiye kadar, büyük ölçüde resim içeren PDF dosyaları için optimizasyon yaklaşımlarını tartıştık. Şimdi PDF optimizasyonu için birkaç yolla devam edelim.

Java Kullanarak PDF Doküman Boyutunu Sıkıştırın veya Küçültün

PDF dosyaları genellikle toplu olarak yer kaplayan ek açıklamalar, düzenlenebilir form alanları ve renk yapıları içerir. PDF dosya boyutunu sıkıştırmak için aşağıdaki prosedürleri keşfedelim.

Java ile Boyutu Küçültmek için Ek Açıklamaları Kaldırma veya Düzleştirme

PDF dosyaları çok sayıda ek açıklama içerebilir. Örneğin, filigran, yorumlar, şekiller vb. Artık gerekmiyorsa açıklamaları kaldırabilir veya başka değişiklik gerekmiyorsa açıklamaları kalınlaştırabilirsiniz. PDF dosya boyutunu optimize etmek için ek açıklamaları kaldırmak veya düzleştirmek için lütfen aşağıdaki adımları izleyin:

  1. Açık kaynaklı PDF belgesi
  2. Her sayfada yinele
  3. Açıklamaları düzleştirin veya silin
  4. Çıktı PDF belgesini kaydedin

Aşağıdaki kod parçacığı, Java kullanarak PDF belgelerindeki ek açıklamaların nasıl kaldırılacağına veya düzleştirileceğine bir örnektir:

// Belgeyi aç
Document pdfDocument = new Document(dataDir + "OptimizeDocument.pdf");

// Her sayfa ve ek açıklama boyunca yineleyin
for (Page page : pdfDocument.getPages())
{
   for (Annotation annotation : page.getAnnotations())
    {
        // Ek açıklamayı düzleştirin
        annotation.flatten();
        
        // VEYA ek açıklamayı silin
        // page.getAnnotations().delete(açıklama);        
    }
}
// Optimize edilmiş PDF belgesini kaydedin
pdfDocument.save(dataDir + "OptimizeDocument_out.pdf");

Java ile PDF Dosya Boyutunu Küçültmek için Form Alanlarını Kaldırma

Doldurulabilir PDF formları, büyük ölçekte veri göndermeniz gereken yerlerde yaygındır. Verilerin gönderilmesinden sonra, PDF dosya boyutunu optimize etmek ve küçültmek için doldurulabilir form alanları kaldırılabilir. Form alanlarını kaldırmak için aşağıdaki adımları izlemeniz gerekir:

  1. Giriş PDF belgesini yükle
  2. PDF belgesindeki form alanlarını kontrol edin
  3. Her alanı yineleyin ve düzleştirin
  4. Güncellenmiş sıkıştırılmış PDF dosyasını kaydedin
// Kaynak PDF formunu yükle
Document doc = new Document(dataDir + "input.pdf");

// Form alanlarını düzleştirme
if (doc.getForm().getFields().length > 0)
{
   for (Field item : doc.getForm().getFields())
    {
        item.flatten();
    }
}

dataDir = dataDir + "FlattenForms_out.pdf";
// Güncellenen belgeyi kaydedin
doc.save(dataDir);

Java kullanarak PDF Sıkıştırma ve Optimizasyon için RGB Renk Alanını Gri Tonlamaya Dönüştürün

PDF dosyalarının çoğu, Gri Tonlamalı renk alanında da iyi bir şekilde temsil edilebilen metin içerikleri içerir. Ayrıca, amaç ve öncelik her bir baytı kaydetmek olduğunda, odak verilerin arşivlenmesi olduğundan görüntüler bile Gri Tonlamaya dönüştürülebilir. RGB renk uzayını Gri Tonlamaya çevirerek PDF dosya boyutunu sıkıştırmak ve optimize etmek için aşağıdaki adımları takip edebilirsiniz:

  1. Kaynak PDF belgesine erişin
  2. RgbToDeviceGrayConversionStrategy örneğini başlat
  3. Her rengin renk alanını Gri Tonlamaya dönüştürün
  4. Çıktı için optimize edilmiş PDF dosyasını kaydedin

Aşağıdaki kod parçacığı, Java ortamında renk alanını değiştirerek PDF boyutunun nasıl sıkıştırılacağını ve optimize edileceğini gösterir:

// Giriş PDF belgesini yükle
Document document = new Document("input.pdf");

// RgbToDeviceGrayConversionStrategy örneğini başlat
RgbToDeviceGrayConversionStrategy strategy = new RgbToDeviceGrayConversionStrategy();
for (int idxPage = 1; idxPage <= document.getPages().size(); idxPage++) {
	Page page = document.getPages().get_Item(idxPage);
        
        // Her sayfanın renk alanını Gri Tonlamaya dönüştürün
	strategy.convert(page);
}
// Çıktı PDF belgesini kaydet
document.save("output.pdf");

Çözüm

Bu makalede, PDF dosyalarını küçültülmüş boyut için optimize etmenin ve sıkıştırmanın farklı yollarını ve yaklaşımlarını ele aldık. Her şeyden önce, Java kullanarak web için PDF dosya boyutunu optimize ettik. Ardından, birkaç görüntü içeren bir PDF dosyasındaki görüntüleri küçültmeyi, sıkıştırmayı ve yeniden boyutlandırmayı öğrendik. Ayrıca, Java kullanılarak daha küçük boyutta ancak aynı kalitede bir PDF dosyası oluşturulabilmesi için yazı tipleri, akışlar, ek açıklamalar, form alanları ile çalışmayı ve PDF belgesinin renk alanını gri tonlamaya dönüştürmeyi de araştırdık. Ayrıca, bu konuyla ilgili herhangi bir sorunuz olması durumunda Ücretsiz Destek Forumu aracılığıyla bizimle iletişime geçebilirsiniz.

Ayrıca bakınız

Bilgi: Aspose’un yeni bir çevrimiçi web uygulamasını kullanarak bir dizi görüntüyü videoya dönüştürebilirsiniz. Videolardan sesleri çıkaran başka bir hizmete de göz atmak isteyebilirsiniz.