Java'da PDF Dosyalarını Bölme

Bir PDF dosyasını birden çok PDF dosyasına bölmeniz gerektiğinde çeşitli durumlar olabilir. Örneğin, faturaları/makbuzları içeren PDF’nin her sayfasını bölmeniz ve ayrı dosyalar olarak kaydetmeniz gerekebilir. Öte yandan, belirli bir sayfa koleksiyonunu bir PDF dosyasından bölmek isteyebilirsiniz. Yukarıda belirtilen senaryolarla başa çıkmak için bu makale, bir PDF dosyasının Java kullanılarak birden çok PDF’ye nasıl bölüneceğini ele almaktadır.

PDF Dosyalarını Bölmek için Java API – Ücretsiz İndirme

PDF dosyalarını bölmek için Aspose.PDF for Java‘ün PDF işleme yeteneklerinden yararlanacağız. API, birkaç adımda bir PDF bölme işlemi gerçekleştirmenizi sağlar. API’yi indirebilir veya aşağıdaki yapılandırmaları kullanarak Maven tabanlı uygulamalarınıza kurabilirsiniz.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.12</version>
    <classifier>jdk17</classifier>
</dependency>

Java kullanarak bir PDF Dosyasını Bölme

PDF bölme kriterleri, gereksinimlere göre farklı senaryolarda değişebilir. Öncelikle, bir PDF dosyasını sayfalara göre nasıl böleceğimize ve her sayfayı ayrı bir PDF olarak nasıl kaydedeceğimize bakalım. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.

  • Belge sınıfını kullanarak PDF belgesini yükleyin.
  • Document.getPages() yöntemini kullanarak sayfalar arasında dolaşın.
  • Her sayfaya bir Page nesnesine erişin.
  • Her yinelemede, yeni bir Belge oluşturun, geçerli sayfayı belgeye ekleyin ve Document.save(String) yöntemini kullanarak bir PDF dosyası olarak kaydedin.

Aşağıdaki kod örneği, Java kullanılarak bir PDF dosyasının nasıl bölüneceğini gösterir.

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

// Sayfa sayacı için
int pageCount = 1;

// Tüm sayfaları dolaş
for (Page pdfPage : pdfDocument.getPages()) {
	// Yeni bir belge oluştur
	Document newDocument = new Document();

	// Belgeye sayfa ekle
	newDocument.getPages().add(pdfPage);

	// PDF olarak kaydet
	newDocument.save("page_" + pageCount + "_out" + ".pdf");
	pageCount++;
}

Java kullanarak bir PDF Dosyasını Sayfa Koleksiyonuna Göre Bölme

Gösterim için, başka bir PDF bölme senaryosuna bakalım. Bu örnekte, bir PDF’yi çift ve tek sayfa numaralarına göre böleceğiz. Aşağıda bu işlemi gerçekleştirmek için adımlar verilmiştir.

  • Belge sınıfını kullanarak PDF belgesini yükleyin.
  • Document.getPages() yöntemini kullanarak sayfalar arasında dolaşın.
  • Çift ve tek sayfaları ArrayList’e ayırın nesneler.
  • Yeni bir Document nesnesi oluşturun, belgeye sayfalar ekleyin ve Document.save(String) yöntemini kullanarak PDF dosyası olarak kaydedin.

Aşağıdaki kod örneği, Java kullanılarak bir PDF dosyasındaki çift ve tek sayfaların nasıl bölüneceğini gösterir.

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

// Çift ve tek sayfalar için dizi listeleri oluşturun
List<Page> evenPages = new ArrayList<Page>();
List<Page> oddPages = new ArrayList<Page>();

// Tüm sayfaları dolaş
for (Page pdfPage : pdfDocument.getPages())
{
	if(pdfPage.getNumber()%2==0)
	{
		evenPages.add(pdfPage);
	}
	else
	{
		oddPages.add(pdfPage);
	}		  	
}
// Çift sayfaları PDF olarak kaydedin
Document newDocument = new Document();
newDocument.getPages().add(evenPages);
newDocument.save("split_even_Pages.pdf");

// Tek sayfaları PDF olarak kaydet
newDocument = new Document();
newDocument.getPages().add(oddPages);
newDocument.save("split_odd_Pages.pdf");

Ücretsiz Lisans Alın

API’yi değerlendirme sınırlamaları olmaksızın denemek için ücretsiz bir geçici lisans alabilirsiniz.

Çözüm

Bu makalede, Java kullanarak bir PDF dosyasını nasıl böleceğinizi öğrendiniz. Ayrıca, PDF bölme kriterlerini gereksinimlere göre nasıl özelleştireceğinizi gördünüz. Belgeleri kullanarak API hakkında daha fazlasını keşfedebilirsiniz.

Ayrıca bakınız