Rozdělit PDF na více souborů v Java

PDF patří mezi nejznámější formáty souborů, které podporují textové, grafické a mnoho dalších prvků. Jedním z důvodů jeho popularity je jeho přenositelnost. V některých případech může být nutné rozdělit velký soubor PDF do více souborů. Chcete-li tento problém vyřešit programově, tento článek popisuje různé způsoby, jak rozdělit soubory PDF v Java.

Java API pro rozdělení souborů PDF

GroupDocs.Merger poskytuje řešení pro sloučení a rozdělení souborů mnoha různých formátů souborů. Jeho Java API využijeme k rozdělení souborů PDF různými způsoby. Stáhněte si soubor JAR z části ke stažení nebo použijte nejnovější konfigurace úložiště a závislostí Maven ve vašich aplikacích Java.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-merger</artifactId>
        <version>21.9</version> 
</dependency>

Rozdělte soubor PDF na vícestránkové soubory v Java

Následující kroky popisují, jak rozdělit soubor PDF na vícestránkové soubory:

  • Načtěte soubor PDF pomocí třídy Merger.
  • Definujte formát výstupního souboru (souborů).
  • Definujte intervaly stránek pomocí SplitOptions.
  • Rozdělte načtené PDF podle definovaného intervalu pomocí metody split().

Následující ukázka kódu ukazuje, jak rozdělit soubory PDF do vícestránkových souborů v Java.

/*
 * Rozdělte soubory PDF do vícestránkových souborů v Java
 */
// Načtěte soubor PDF
Merger merger = new Merger("path/document.pdf"); 

// Definujte formát výstupního souboru (souborů).
String filePathOut = "path/splitPDF_{0}.{1}";

// Definujte rozdělovací intervaly a rozdělovací režim
SplitOptions splitOptions = new SplitOptions(filePathOut,  new int[] { 3, 6, 8 }, SplitMode.Interval);

// Rozdělit PDF podle daných intervalů
merger.split(splitOptions);

Rozdělte soubor PDF na více jednostránkových souborů v Java

Následující kroky popisují, jak můžete rozdělit PDF a extrahovat stránky do více jednostránkových souborů:

  • Načtěte soubor PDF pomocí třídy Merger.
  • Definujte formát výstupního souboru (souborů).
  • Definujte přesná čísla stránek pomocí SplitOptions.
  • Rozdělte načtené PDF podle definovaných stránek pomocí metody split().

Následující ukázka kódu ukazuje, jak rozdělit soubory PDF do více jednostránkových souborů v Java.

/*
 * Rozdělte soubor PDF na jednostránkové soubory v Java
 */
// Načtěte soubor PDF
Merger merger = new Merger("path/document.pdf");

// Definujte formát výstupního souboru (souborů).
String filePathOut = "path/splitPDF_{0}.{1}"; 

// Definujte stránky, které chcete extrahovat jako jednostránkový dokument
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 });

// Rozdělit PDF podle možností rozdělení
merger.split(splitOptions);

Extrahujte stránky ze souborů PDF podle rozsahu v Java

Následující kroky vedou, jak extrahovat stránky z PDF rozdělením podle daného rozsahu:

  • Načtěte soubor PDF pomocí třídy Merger.
  • Definujte formát výstupního souboru (souborů).
  • Zadejte rozsah stránek pomocí SplitOptions.
  • Použijte metodu split() k rozdělení načteného PDF podle definovaného rozsahu.

Následující fragment kódu ukazuje, jak rozdělit PDF a extrahovat stránky poskytnutím rozsahu v Java.

/*
 * Rozdělte soubor PDF podle daného rozsahu na jednostránkové soubory v Java
 */
// Načtěte soubor PDF
Merger merger = new Merger("path/document.pdf"); 

// Definujte formát výstupního souboru (souborů).
String filePathOut = "path/splitPDF_{0}.{1}";

// Definujte rozsah pro extrakci jako jednostránkové dokumenty
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);

// Rozdělit PDF podle možností rozdělení
merger.split(splitOptions);

Extrahujte stránky ze souborů PDF pomocí filtru Sudé/liché v Java

Následující kroky vedou, jak extrahovat sudé/liché stránky v daném rozsahu ze souboru PDF rozdělením:

  • Načtěte soubor PDF pomocí třídy Merger.
  • Definujte formát výstupního souboru (souborů).
  • Zadejte rozsah stránek pomocí SplitOptions.
  • Použijte filtr sudé, liché nebo všechny stránky pomocí RangeMode.
  • Použijte metodu split() k rozdělení načteného PDF podle definovaného filtru.

Následující fragment kódu ukazuje, jak extrahovat všechny liché/sudé stránky v definovaném rozsahu souboru PDF pomocí Java.

/*
 * Rozdělte soubor PDF podle daného rozsahu a filtru (sudé/liché stránky) na jednostránkové soubory v Java
 */
// Načtěte soubor PDF
Merger merger = new Merger("path/document.pdf"); 

// Definujte formát výstupního souboru (souborů).
String filePathOut = "path/splitPDF_{0}.{1}";

// Definujte rozsah a filtr pro extrahování všech stránek ODD v daném rozsahu jako jednostránkové dokumenty
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, (Integer)RangeMode.OddPages);

// Rozdělit PDF podle možností rozdělení
merger.split(splitOptions);

Souhrn změn kódu

Jediná věc, která se ve výše uvedených scénářích liší, je způsob vytváření SplitOptions. V rámci svého kódu můžete použít následující konfigurace podle svých požadavků.

  • Pro vícestránkové soubory - Interval použití: [1,2], [3,4,5], [6,7], [8,9,10].
new SplitOptions(outputFile,  new int[] { 3, 6, 8 }, SplitMode.Interval)
  • Jednotlivé stránky: [3], [6], [8]
new SplitOptions(outputFile, new int[] { 3, 6, 8 });
  • Chcete-li extrahovat stránky v rozsahu: [3], [4], [5]
new SplitOptions(outputFile, 3, 5);
  • Rozsah s filtrem: [3], [5], [7]
new SplitOptions(outputFile, 3, 7, (Integer)RangeMode.OddPages);

Získejte bezplatnou licenci API

Můžete získat bezplatnou dočasnou licenci, abyste mohli používat API bez omezení hodnocení.

Závěr

Abych to shrnul, naučili jste se různé způsoby rozdělení souborů PDF v Java. Nejprve rozdělíme soubor PDF na vícestránkové dokumenty a také na několik jednostránkových dokumentů. Poté jsme jednu po druhé extrahovali všechny stránky a sudé/liché stránky souboru PDF v daném rozsahu. Nyní byste si měli být jisti, že vytvoříte svou vlastní Java aplikaci pro rozdělování PDF pomocí rozhraní GroupDocs.Merger API.

Chcete-li se dozvědět více o API, navštivte dokumentaci. V případě dotazů nás kontaktujte prostřednictvím fóra.

Viz také