Diviser le PDF en plusieurs fichiers à l'aide de C #

PDF est l’un des formats de fichiers les plus couramment utilisés qui est hautement portable. En tant que développeur, vous avez peut-être été confronté au scénario de fractionner des fichiers PDF volumineux par programmation. Dans l’un des articles, nous avons appris à diviser les fichiers PDF en Java. Aujourd’hui, cet article traite de différentes manières de comment fractionner des fichiers PDF à l’aide de C# dans des applications .NET.

API .NET pour fractionner des fichiers PDF

Afin de diviser les fichiers PDF, nous utiliserons GroupDocs.Merger for .NET. C’est l’API qui permet un développement rapide pour intégrer des fonctionnalités avec très peu de lignes de code. En plus du fractionnement, il prend en charge la fusion, l’échange ou le rognage de documents de différents formats de fichiers.

Vous pouvez télécharger le programme d’installation DLLs ou MSI à partir de la section téléchargements ou installer l’API dans votre application .NET via NuGet.

PM> Install-Package GroupDocs.Merger

Diviser un fichier PDF en fichiers multipages à l’aide de C

Les étapes suivantes expliquent comment diviser des fichiers PDF en fichiers multipages à l’aide de C# :

  • Définissez le format des fichiers de sortie.
  • Définissez les intervalles de page à l’aide de SplitOptions.
  • Chargez le fichier PDF en utilisant la classe Merger.
  • Divisez le PDF chargé selon l’intervalle défini à l’aide de la méthode Split ().

L’exemple de code suivant montre comment diviser des fichiers PDF en fichiers multipages.

/*
 * Fractionner des fichiers PDF en fichiers multipages à l'aide de C#
 */
// Définir le format des fichiers de sortie
string filePathOut = "path/splitPDF_{0}.{1}";

// Définir les intervalles de fractionnement et le mode de fractionnement
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 }, SplitMode.Interval);

// Charger le fichier PDF et diviser le PDF en fonction des options de fractionnement
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
} 

Extraire des pages de fichiers PDF par plage

Les étapes suivantes expliquent comment extraire des pages d’un PDF à l’aide de C# en les divisant en fonction de la plage donnée :

  • Définissez le format des fichiers de sortie.
  • Indiquez la plage de pages à l’aide de SplitOptions.
  • Chargez le fichier PDF en utilisant la classe Merger.
  • Utilisez la méthode Split() pour diviser le PDF chargé en fonction de la plage définie.

L’extrait de code suivant montre comment diviser un PDF et extraire des pages en fournissant la plage.

/*
 * Diviser le fichier PDF par plage donnée en fichiers d'une seule page à l'aide de C#
 */
// Définir le format des fichiers de sortie
string filePathOut = "path/splitPDF_{0}.{1}";

// Définir la plage à extraire en tant que documents d'une seule page
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);

// Charger le fichier PDF et diviser le PDF en fonction des options de fractionnement
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
}

Extraire les pages paires/impaires des fichiers PDF à l’aide de C#

Les étapes suivantes expliquent comment extraire les pages paires/impaires d’un fichier PDF en les divisant dans la plage donnée en appliquant simplement des filtres en C# :

  • Définissez le format des fichiers de sortie.
  • Indiquez la plage de pages à l’aide de SplitOptions.
  • Appliquez le filtre pour les pages paires, impaires ou toutes les pages à l’aide de RangeMode.
  • Chargez le fichier PDF en utilisant la classe Merger.
  • Utilisez la méthode Split() pour séparer le PDF chargé en fonction du filtre défini.

L’extrait de code suivant montre comment extraire toutes les pages paires/impaires dans la plage définie d’un fichier PDF.

/*
 * Diviser le fichier PDF par plage donnée et filtre (pages paires/impaires) en fichiers d'une seule page à l'aide de C#
 */
// Définir le format des fichiers de sortie
string filePathOut = "path/splitPDF_{0}.{1}";

// Définir la plage et le filtre pour extraire toutes les pages ODD dans la plage donnée en tant que documents d'une seule page
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, RangeMode.OddPages);

// Charger le fichier PDF et diviser le PDF en fonction des options de fractionnement
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
}

Diviser un fichier PDF en plusieurs fichiers d’une seule page

Les étapes suivantes expliquent comment diviser un PDF pour extraire des pages en plusieurs fichiers d’une seule page en C# :

  • Définissez le format des fichiers de sortie.
  • Définissez les numéros de page exacts à l’aide de SplitOptions.
  • Chargez le fichier PDF en utilisant la classe Merger.
  • Divisez le PDF chargé en fonction des pages définies à l’aide de la méthode Split ().

L’exemple de code suivant montre comment diviser des fichiers PDF en plusieurs fichiers d’une seule page.

/*
 * Diviser le fichier PDF en fichiers d'une seule page à l'aide de C #
 */
// Définir le format des fichiers de sortie
string filePathOut = "path/splitPDF_{0}.{1}";

// Définir les pages à extraire en tant que document d'une seule page
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 });

// Charger le fichier PDF et diviser le PDF en fonction des options de fractionnement
using (Merger merger = new Merger("path/document.pdf"))
{
    merger.Split(splitOptions);
}

Résumé des changements de code

Dans tous les scénarios, ce qui change, c’est la façon de définir SplitOptions. Voici le résumé du changement dans chaque extrait de code pour chaque scénario. Vous pouvez utiliser les paramètres suivants selon vos besoins dans votre code. Ici, j’ai utilisé un fichier PDF de 10 pages.

  • Pour les fichiers multipages - Utiliser l’intervalle : [1,2], [3,4,5], [6,7], [8,9,10].
new SplitOptions(outputFile,  new int[] { 3, 6, 8 }, SplitMode.Interval)
  • Extraire les pages dans la plage : [3], [4], [5], [6]
new SplitOptions(outputFile, 3, 6);
  • Plage avec filtre : [3], [5], [7]
new SplitOptions(outputFile, 3, 8, (Integer)RangeMode.OddPages);
  • Pages individuelles : [3], [4], [9]
new SplitOptions(outputFile, new int[] { 3, 4, 9 });

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser l’API sans les limitations d’évaluation.

Conclusion

Pour conclure, nous avons discuté des moyens de fractionner des fichiers PDF à l’aide de C#. Tout d’abord, nous divisons le fichier PDF en documents de plusieurs pages et d’une seule page. Nous avons également extrait des pages de fichiers PDF. Tout d’abord, nous avons extrait toutes les pages, puis les pages paires/impaires dans la plage donnée. Vous pouvez essayer de créer votre propre application .NET de fractionnement de PDF à l’aide de l’API GroupDocs.Merger.

Pour en savoir plus sur l’API, consultez la documentation. Pour toute question, contactez-nous via le forum.

Voir également