Splits PDF in meerdere bestanden in Java

PDF is een van de bekendste bestandsindelingen die tekstuele, grafische en vele andere elementen ondersteunen. Een van de redenen voor zijn populariteit is de draagbaarheid. In bepaalde gevallen moet u een groot PDF-bestand opsplitsen in meerdere bestanden. Om dit programmatisch aan te pakken, bespreekt dit artikel verschillende manieren om PDF-bestanden in Java te splitsen.

Java API om PDF-bestanden te splitsen

GroupDocs.Merger biedt de oplossing om bestanden van veel verschillende bestandsindelingen samen te voegen en te splitsen. We zullen de Java API gebruiken om PDF-bestanden op verschillende manieren te splitsen. Download het JAR-bestand van de downloadsectie, of gebruik gewoon de nieuwste repository- en afhankelijkheidsconfiguraties Maven binnen uw Java-applicaties.

<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>

Splits PDF-bestand in MultiPage-bestanden in Java

De volgende stappen begeleiden hoe u een PDF-bestand kunt splitsen in bestanden met meerdere pagina’s:

  • Laad het PDF-bestand met de klasse Merger.
  • Definieer het formaat van het uitvoerbestand(en).
  • Definieer de pagina-intervallen met SplitOptions.
  • Splits de geladen PDF volgens het gedefinieerde interval met de methode split().

Het volgende codevoorbeeld laat zien hoe u PDF-bestanden kunt splitsen in bestanden met meerdere pagina’s in Java.

/*
 * Splits PDF-bestanden in bestanden met meerdere pagina's in Java
 */
// Laad het PDF-bestand
Merger merger = new Merger("path/document.pdf"); 

// Definieer uitvoerbestand(en) formaat
String filePathOut = "path/splitPDF_{0}.{1}";

// Definieer splitsingsintervallen en splitsingsmodus
SplitOptions splitOptions = new SplitOptions(filePathOut,  new int[] { 3, 6, 8 }, SplitMode.Interval);

// Splits PDF volgens gegeven intervallen
merger.split(splitOptions);

Splits PDF-bestand in meerdere bestanden van één pagina in Java

De volgende stappen laten zien hoe u een PDF kunt splitsen om pagina’s te extraheren in meerdere bestanden van één pagina:

  • Laad het PDF-bestand met de klasse Merger.
  • Definieer het formaat van het uitvoerbestand(en).
  • Definieer de exacte paginanummers met behulp van SplitOptions.
  • Splits de geladen PDF op basis van gedefinieerde pagina’s met de methode split().

Het volgende codevoorbeeld laat zien hoe u PDF-bestanden kunt splitsen in meerdere bestanden van één pagina in Java.

/*
 * Splits PDF-bestand in Single Page-bestanden in Java
 */
// Laad het PDF-bestand
Merger merger = new Merger("path/document.pdf");

// Definieer uitvoerbestand(en) formaat
String filePathOut = "path/splitPDF_{0}.{1}"; 

// Definieer pagina's die moeten worden geëxtraheerd als document met één pagina
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 });

// Splits PDF volgens splitsopties
merger.split(splitOptions);

Extraheer pagina’s uit PDF-bestanden op bereik in Java

De volgende stappen helpen u bij het extraheren van pagina’s uit PDF door ze te splitsen volgens het gegeven bereik:

  • Laad het PDF-bestand met de klasse Merger.
  • Definieer het formaat van het uitvoerbestand(en).
  • Geef het paginabereik op met SplitOptions.
  • Gebruik de methode split() om de geladen PDF te splitsen volgens het gedefinieerde bereik.

Het volgende codefragment laat zien hoe u PDF kunt splitsen en pagina’s kunt extraheren door bereik in Java op te geven.

/*
 * Splits een PDF-bestand op gegeven bereik in bestanden met één pagina in Java
 */
// Laad het PDF-bestand
Merger merger = new Merger("path/document.pdf"); 

// Definieer uitvoerbestand(en) formaat
String filePathOut = "path/splitPDF_{0}.{1}";

// Definieer het bereik dat moet worden geëxtraheerd als documenten met één pagina
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);

// Splits PDF volgens splitsopties
merger.split(splitOptions);

Extraheer pagina’s uit PDF-bestanden met Even/Oneven Filter in Java

De volgende stappen helpen u bij het extraheren van even/oneven pagina’s in het gegeven bereik uit een PDF-bestand door te splitsen:

  • Laad het PDF-bestand met de klasse Merger.
  • Definieer het formaat van het uitvoerbestand(en).
  • Geef het paginabereik op met behulp van SplitOptions.
  • Pas het filter even, oneven of alle pagina’s toe met behulp van RangeMode.
  • Gebruik de methode split() om de geladen PDF te splitsen volgens het gedefinieerde filter.

Het volgende codefragment laat zien hoe u met Java alle oneven/even pagina’s in het gedefinieerde bereik van een PDF-bestand kunt extraheren.

/*
 * Splits een PDF-bestand op gegeven bereik en filter (even/oneven pagina's) in bestanden met één pagina in Java
 */
// Laad het PDF-bestand
Merger merger = new Merger("path/document.pdf"); 

// Definieer uitvoerbestand(en) formaat
String filePathOut = "path/splitPDF_{0}.{1}";

// Definieer bereik en filter om alle ODD-pagina's in het opgegeven bereik te extraheren als documenten met één pagina
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, (Integer)RangeMode.OddPages);

// Splits PDF volgens splitsopties
merger.split(splitOptions);

Samenvatting codewijziging

Het enige dat in de bovenstaande scenario’s verschilt, is de manier om SplitOptions te maken. U kunt de volgende configuraties gebruiken volgens uw vereisten binnen uw code.

  • Voor bestanden met meerdere pagina’s - Gebruik Interval: [1,2], [3,4,5], [6,7], [8,9,10].
new SplitOptions(outputFile,  new int[] { 3, 6, 8 }, SplitMode.Interval)
  • Afzonderlijke pagina’s: [3], [6], [8]
new SplitOptions(outputFile, new int[] { 3, 6, 8 });
  • Pagina’s binnen bereik extraheren: [3], [4], [5]
new SplitOptions(outputFile, 3, 5);
  • Bereik met filter: [3], [5], [7]
new SplitOptions(outputFile, 3, 7, (Integer)RangeMode.OddPages);

Ontvang een gratis API-licentie

U kunt een gratis tijdelijke licentie krijgen om de API te gebruiken zonder de evaluatiebeperkingen.

Conclusie

Kortom, u hebt verschillende manieren geleerd om PDF-bestanden in Java te splitsen. Eerst splitsen we het PDF-bestand op in documenten met meerdere pagina’s en in meerdere documenten van één pagina. Vervolgens hebben we een voor een alle pagina’s en even/oneven pagina’s van het PDF-bestand binnen het opgegeven bereik geëxtraheerd. Nu zou u er zeker van moeten zijn dat u uw eigen PDF-splitter Java-app kunt bouwen met behulp van de GroupDocs.Merger API.

Ga voor meer informatie over de API naar de documentatie. Neem voor vragen contact met ons op via het forum.

Zie ook