Java'da Bir PDF Nasıl Bölünür

This article was translated from English: Does it need improvement?
Translated
View the article in English

Java'da bir PDF'yi bölmek, tek tek sayfaları ayıklamak, sayfa aralıklarını çekmek veya bir belgeyi sınırdan bölmek için PdfDocument sınıfında copyPage, copyPages ve splitBy yöntemlerini sağlayan IronPDF ile oldukça basittir. Her yöntem, orijinalinden bağımsız olarak kaydettiğiniz yeni bir PdfDocument döndürür.

Hızlı Başlangıç: Java'da Bir PDF'yi Bölün

  1. IronPDF for Java'yı Maven veya Gradle üzerinden yükleyin
  2. Lisans anahtarınızı License.setLicenseKey() ile ayarlayın
  3. PdfDocument.fromFile() ile PDF'yi yükleyin
  4. Tek bir sayfayı çıkarmak için copyPage() kullanın
  5. Sonucu saveAs() ile kaydedin

```java :title=Hızlı Başlangıç //:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/quickstart.java import java.io.IOException; import java.nio.file.Path; import com.ironsoftware.IronPdf.License; import com.ironsoftware.IronPdf.PdfDocument;

public class Main { public static void main(String[] args) throws IOException { // Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

// Kaynak PDF'yi diskten yükleyin PdfDocument pdf = PdfDocument.fromFile(Path.of("source.pdf"));

   // İlk sayfayı (sıfır tabanlı dizin 0) yeni bir belgeye çıkarın
   PdfDocument firstPage = pdf.copyPage(0);

   // Çıkarılan sayfayı bağımsız bir PDF olarak kaydedin
   firstPage.saveAs(Path.of("page-one.pdf"));
}

}


PDF bölme, belgeleri programatik olarak üretirken yaygın bir gereksinimdir. Tek bir dosya olarak üretilen bir rapor, dağıtımdan önce bireysel bölümlere ayrılabilir. Arşivleme iş akışları, genellikle her bölümü veya faturayı ayrı bir dosya olarak saklamayı gerektirir. Seçici paylaşımlar, yalnızca belirli bir sayfa aralığının bir müşteriye gönderilmesi gereken senaryolarda, tüm belgeyi göndermek yerine tam olarak gerekli sayfaları çıkarmaktan faydalanır.

IronPDF, `PdfDocument` sınıfındaki tutarlı bir API aracılığıyla bu üç bölme modelinin tümünü işler. HTML'den PDF oluşturmak veya mevcut dosyaları yüklemek için kullanılan aynı sınıf, sayfa çıkarma yöntemlerini açığa çıkarır, bu nedenle bölme, mevcut herhangi bir IronPDF iş akışına doğal olarak entegre olur. Kurulum ve bağımlılık yapılandırması için [Başlangıç ​​Kılavuzu'na](https://ironpdf.com/java/docs/) başvurun.

IronPDF'deki tüm sayfa dizinleri sıfır tabanlıdır. Kaynak belgeniz on sayfadan oluşuyorsa, geçerli dizinler 0'dan 9'a kadar olmalıdır. Bu, `copyPage`, `copyPages`'nin her iki sınırı ve `splitBy`'nin sınır argümanı için geçerlidir. Aralık dışı bir dizin geçildiğinde çalışma zamanında bir istisna atılır, bu nedenle değişken uzunluktaki belgelerle çalışırken sayfa sayılarını `pdf.getPageCount()` ile karşılaştırarak doğrulayın.

<div class="hsg-featured-snippet">
    <h2>Java'da Bir PDF Nasıl Bölünür</h2>
    <ol>
        <li><a href="https://ironpdf.com/java/#download-modal">PDF'leri bölmek için Java kütüphanesini yükleyin</a></li>
        <li><strong>PdfDocument</strong> sınıfını kullanarak kaynak PDF'yi yükleyin</li>
        <li>Tek bir sayfayı yeni bir belgeye çıkarmak için <code>copyPage</code> kullanın</li>
        <li>Bir dizi sayfayı çıkarmak için <code>copyPages</code> kullanın</li>
        <li>PDF'yi belirli bir sayfa sınırında bölmek için <code>splitBy</code> kullanın</li>
        <li>Her oluşan belgeyi <code>saveAs</code> ile kaydedin</li>
    </ol>
</div>

## Başlamadan Önce Neye İhtiyacım Var?

PDF'leri bölmeden önce, IronPDF'nin Maven veya Gradle bağımlılığı olarak Java projenize eklendiğinden emin olun. Kütüphane, Java 8 veya üstünü gerektirir. Maven Central'dan IronPDF artefaktını yapı dosyanıza ekleyin:

```xml
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>2024.9.1</version>
</dependency>

Gradle projeleri için, implementation satırının eşdeğerini build.gradle dosyanıza ekleyin. Tam bağımlılık ve yapılandırma talimatları Başlangıç ​​Kılavuzu'nda mevcuttur.

Geçerli bir lisans anahtarı gereklidir. Herhangi bir IronPDF yöntemini çağırmadan önce uygulama başlangıcında ayarlayın:

License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
License.setLicenseKey("IRONPDF-MYLICENSE-KEY-1EF01");
JAVA

Lisans seçenekleri ve deneme anahtarları için lisans anahtarları kılavuzunu inceleyin.

İpuçlarıIronPDF'deki tüm sayfa dizinleri sıfır tabanlı numaralandırma kullanır. Belgenizin 1. sayfası indeks 0, 2. sayfası indeks 1'dir ve böyle devam eder.

Bir PDF'den Tek Bir Sayfayı Nasıl Çıkartırım?

copyPage(int pageIndex) yöntemi, bir PdfDocument dosyasından bir sayfa çıkarır ve bunu yeni, bağımsız bir PdfDocument dosyası olarak döndürür. Orijinal belge değiştirilmez. pageIndex argümanı sıfır tabanlıdır: ilk sayfa için 0, ikinci sayfa için 1 vb. değerleri geçirin.

İş akışınızın belirli bir sayfayı izole etmesini gerektirdiği durumlarda, bu yöntem uygundur, örneğin, bir kapak sayfası, imzalı imza sayfası veya toplu olarak üretilmiş bir belgede tek bir faturanın çıkarılması gibi.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/copy-single-page.java
import java.io.IOException;
import java.nio.file.Path;
import com.ironsoftware.IronPdf.License;
import com.ironsoftware.IronPdf.PdfDocument;

public class Main {
    public static void main(String[] args) throws IOException {
// Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın
        License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

// Kaynak PDF'yi diskten yükleyin
PdfDocument pdf = PdfDocument.fromFile(Path.of("source.pdf"));

        // Extract the third page (zero-based index 2) into a new document
        PdfDocument thirdPage = pdf.copyPage(2);

       // Çıkarılan sayfayı bağımsız bir PDF olarak kaydedin
        thirdPage.saveAs(Path.of("third-page.pdf"));
    }
}
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/copy-single-page.java
import java.io.IOException;
import java.nio.file.Path;
import com.ironsoftware.IronPdf.License;
import com.ironsoftware.IronPdf.PdfDocument;

public class Main {
    public static void main(String[] args) throws IOException {
// Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın
        License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

// Kaynak PDF'yi diskten yükleyin
PdfDocument pdf = PdfDocument.fromFile(Path.of("source.pdf"));

        // Extract the third page (zero-based index 2) into a new document
        PdfDocument thirdPage = pdf.copyPage(2);

       // Çıkarılan sayfayı bağımsız bir PDF olarak kaydedin
        thirdPage.saveAs(Path.of("third-page.pdf"));
    }
}
JAVA

Dönüş değeri PdfDocument, kaynaktan tamamen bağımsızdır. Kaydetmeden önce daha fazla dönüşüm uygulayabilir, açıklamalar ekleyebilir veya diğer belgelerle birleştirebilirsiniz.

Bir PDF'deki Sayfa Aralığını Nasıl Çıkarırım?

copyPages(int fromIndex, int toIndex) yöntemi, birbirine bitişik bir sayfa aralığını çıkarır ve bunları yeni bir PdfDocument olarak döndürür. Hem fromIndex hem de toIndex sıfır tabanlı ve kapsayıcıdır: on sayfalık bir belgede copyPages(1, 4) komutunu çalıştırmak, 2, 3, 4 ve 5. sayfaları (1'den 4'e kadar olan indeksleri) çıkarır.

Sayfa aralığı çıkarmak, çok bölümlü bir rapordan bir bölüm alma, çok sayfalı bir ek çıkarma veya PDF olarak dışa aktarılmış bir sunumdan bir dizi slaytı izole etme gibi senaryolara uygundur.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/copy-page-range.java
import java.io.IOException;
import java.nio.file.Path;
import com.ironsoftware.IronPdf.License;
import com.ironsoftware.IronPdf.PdfDocument;

public class Main {
    public static void main(String[] args) throws IOException {
// Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın
        License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

        // Load a multi-page source PDF
        PdfDocument pdf = PdfDocument.fromFile(Path.of("multi-page-report.pdf"));

        // Extract pages 2 through 5 (zero-based indexes 1 through 4, inclusive)
        PdfDocument chapter = pdf.copyPages(1, 4);

        // Save the extracted page range as a standalone document
        chapter.saveAs(Path.of("chapter-pages-2-to-5.pdf"));
    }
}
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/copy-page-range.java
import java.io.IOException;
import java.nio.file.Path;
import com.ironsoftware.IronPdf.License;
import com.ironsoftware.IronPdf.PdfDocument;

public class Main {
    public static void main(String[] args) throws IOException {
// Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın
        License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

        // Load a multi-page source PDF
        PdfDocument pdf = PdfDocument.fromFile(Path.of("multi-page-report.pdf"));

        // Extract pages 2 through 5 (zero-based indexes 1 through 4, inclusive)
        PdfDocument chapter = pdf.copyPages(1, 4);

        // Save the extracted page range as a standalone document
        chapter.saveAs(Path.of("chapter-pages-2-to-5.pdf"));
    }
}
JAVA

Kaynak belgenin sayfaları istenen toIndex sayısından azsa, IronPDF bir istisna oluşturur. Sayfa sayısı değişkenlik gösterebilen belgelerle çalışırken, copyPages işlevini çağırmadan önce pdf.getPageCount() işlevini kontrol edin.

Bir PDF'yi İki Belgeye Nasıl Bölerim?

splitBy(int splitAfterPageIndex) yöntemi, bir PDF'yi bir sınırdan böler ve tam olarak iki öğe içeren bir List<PdfDocument> döndürür. İlk öğe, 0'dan splitAfterPageIndex'ye kadar (dahil) olan sayfaları içerir. İkinci bölüm, splitAfterPageIndex + 1'den belgenin sonuna kadar kalan tüm sayfaları içerir.

Örneğin, on sayfalık bir belgede splitBy(2) çağrısı yapıldığında şu sonuç elde edilir:

  • parts.get(0): sayfalar 0, 1, 2 (ilk üç sayfa)
  • parts.get(1): 3. sayfadan 9. sayfaya kadar (kalan yedi sayfa)

Bu yöntem, belgeleri bilinen bir sınırda ayırma, bir kapak sayfasını metinden ayırma, bir belgeyi bir bölüm kesintisinde bölme veya toplu bir dosyayı paralel işlem için iki yarıya ayırma gibi senaryolar için uygundur.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/split-by-boundary.java
import java.io.IOException;
import java.nio.file.Path;
import java.util.List;
import com.ironsoftware.IronPdf.License;
import com.ironsoftware.IronPdf.PdfDocument;

public class Main {
    public static void main(String[] args) throws IOException {
// Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın
        License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

// Kaynak PDF'yi diskten yükleyin
PdfDocument pdf = PdfDocument.fromFile(Path.of("source.pdf"));

        // Split after page index 2 -- first part: pages 0-2, second part: pages 3 to end
        List<PdfDocument> parts = pdf.splitBy(2);

        // Save the first part (pages 0 through 2)
        parts.get(0).saveAs(Path.of("part-one.pdf"));

        // Save the second part (pages 3 through end)
        parts.get(1).saveAs(Path.of("part-two.pdf"));
    }
}
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-split-pdf-tutorial/split-by-boundary.java
import java.io.IOException;
import java.nio.file.Path;
import java.util.List;
import com.ironsoftware.IronPdf.License;
import com.ironsoftware.IronPdf.PdfDocument;

public class Main {
    public static void main(String[] args) throws IOException {
// Herhangi bir IronPDF yöntemini çağırmadan önce lisans anahtarını ayarlayın
        License.setLicenseKey("IronPDF-MYLICENSE-KEY-1EF01");

// Kaynak PDF'yi diskten yükleyin
PdfDocument pdf = PdfDocument.fromFile(Path.of("source.pdf"));

        // Split after page index 2 -- first part: pages 0-2, second part: pages 3 to end
        List<PdfDocument> parts = pdf.splitBy(2);

        // Save the first part (pages 0 through 2)
        parts.get(0).saveAs(Path.of("part-one.pdf"));

        // Save the second part (pages 3 through end)
        parts.get(1).saveAs(Path.of("part-two.pdf"));
    }
}
JAVA

Lütfen dikkate alınsplitBy her zaman tam olarak iki öğe içeren bir liste döndürür. Eğer splitAfterPageIndex belgenin son sayfa indeksine eşitse, ikinci öğe boş bir belge olacaktır. Bölme noktası dinamik olarak hesaplandığında, bölme sınırını pdf.getPageCount() - 1 ile karşılaştırarak doğrulayın.

Java'da PDF Bölme için Sonraki Adımlar Nelerdir?

IronPDF'nin copyPage, copyPages ve splitBy yöntemleri, tek sayfa çıkarma işleminden aralık tabanlı bölme ve sınır tabanlı bölmeye kadar Java'daki tüm PDF bölme gereksinimlerini karşılar. Her yöntem, daha fazla işleme veya hemen kaydetmeye hazır bağımsız bir PdfDocument döndürür.

Java'da PDF belgeleriyle çalışmaya devam etmek için bu ilgili kaynakları inceleyin:

Ücretsiz denemenizi başlatın Java iş akışınıza PDF bölme eklemek için. Üretim kullanımı için bir lisans satın almak isterseniz, lisanslama seçeneklerini görüntüleyin.

Sıkça Sorulan Sorular

Java'da IronPDF ile PDF'yi nasıl bölerim?

PDF'nizi PdfDocument.fromFile() ile yükleyin, ardından copyPage(index) ile bir tek sayfa çıkarın, copyPages(from, to) ile bir aralık çıkarın veya splitBy(index) ile belgeyi iki parçaya bölün. Her sonucu saveAs() ile kaydedin.

copyPage, copyPages ve splitBy arasındaki fark nedir?

copyPage(index) sıfır tabanlı indeksle bir tek sayfa çıkarır. copyPages(fromIndex, toIndex) hem başlangıç hem de bitiş dahil olmak üzere birbirini izleyen bir aralığı çıkarır. splitBy(index) belgeyi bir sınırda böler ve iki elemanlı bir List döndürür: 0 ile sınır indeksi arasındaki sayfalar ve kalan tüm sayfalar.

IronPDF'de sayfa dizinleri sıfır tabanlı mı yoksa bir bazlı mı?

IronPDF'de sayfa dizinleri sıfır tabanlıdır. Bir belgenin ilk sayfası indeks 0, ikinci sayfa indeks 1'dir ve bu böyle devam eder. Bu copyPage, copyPages ve splitBy için geçerlidir.

splitBy ne döner?

splitBy(splitAfterPageIndex) tam iki elemanlı bir List döndürür. İlk eleman, sınır indeksine (dahil) kadar olan sayfaları içerir. İkinci eleman, kalan tüm sayfaları içerir. Bölme indeksi son sayfa ise, ikinci eleman boş bir belge olacaktır.

Java'da IronPDF ile PDF'leri bölmek için gereken ön koşullar nelerdir?

Java 8 veya üstü, Maven veya Gradle bağımlılığı olarak eklenmiş IronPDF kütüphanesi ve herhangi bir IronPDF çağrısından önce ayarlanan License.setLicenseKey() ile geçerli bir lisans anahtarına ihtiyacınız var.

Java'da bir PDF'den sayfa 2 ile 5 arasını nasıl çıkarırım?

Sayfa 2 ile 5 arasını çıkarmak için pdf.copyPages(1, 4) kullanın. IronPDF sıfır tabanlı dizinler kullanır, bu yüzden sayfa 2 indeks 1 ve sayfa 5 indeks 4'tür. Hem başlangıç hem de bitiş dahil. Sonucu saveAs() ile kaydedin.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku
Başlamaya Hazır mısınız?
Sürüm: 2026.5 just released
Still Scrolling Icon

Hâlâ Kaydırıyor Musunuz?

Hızlıca kanıt ister misiniz?
bir örnek çalıştır HTML'nizi bir PDF'ye dönüştüğünü izleyin.