Diviser des documents PDF à l'aide de l'API REST dans Node.js

Vous devrez peut-être diviser les fichiers PDF en plusieurs fichiers par programme. En divisant les documents PDF, vous pouvez facilement extraire et partager une information spécifique ou un ensemble de données avec les parties prenantes. En tant que développeur Node.js, vous pouvez diviser des documents PDF en plusieurs documents sur le cloud. Dans cet article, vous apprendrez à diviser des documents PDF à l’aide d’une API REST dans Node.js.

Les sujets suivants seront traités dans cet article :

API REST PDF Splitter et SDK Node.js

Pour diviser les fichiers PDF, j’utiliserai l’API Node.js SDK of GroupDocs.Merger Cloud. Il vous permet de diviser, combiner, supprimer et réorganiser une seule page ou une collection de pages à partir de formats de documents pris en charge de Word, Excel, PowerPoint, Dessins Visio, PDF et HTML.

Vous pouvez installer GroupDocs.Merger Cloud sur votre application Node.js à l’aide de la commande suivante dans la console :

npm install groupdocs-merger-cloud

Veuillez obtenir votre ID client et votre secret à partir du tableau de bord avant de suivre les étapes mentionnées. Une fois que vous avez votre identifiant et votre secret, ajoutez le code comme indiqué ci-dessous :

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

Diviser des documents PDF en documents d’une page à l’aide de l’API REST dans Node.js

Vous pouvez diviser des fichiers PDF par programme sur le cloud en suivant les étapes simples mentionnées ci-dessous :

Télécharger le fichier PDF

Tout d’abord, téléchargez le fichier PDF sur le Cloud en utilisant l’exemple de code ci-dessous :

// construire FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let file = 'C:\\Files\\merger\\ten-pages.pdf';

// lire les fichiers un par un
fs.readFile(file, (err, fileStream) => {
  // créer une demande de téléchargement de fichier
  let request = new groupdocs_merger_cloud.UploadFileRequest("ten-pages.pdf", fileStream, myStorage);
  // téléverser un fichier
  fileApi.uploadFile(request)
});

Par conséquent, le fichier PDF téléchargé sera disponible dans la section fichiers de votre tableau de bord sur le cloud.

Diviser des documents PDF à l’aide de l’API REST dans Node.js

Vous pouvez facilement diviser par programmation des pages de n’importe quel fichier PDF en documents PDF séparés constitués d’une page dans un document en suivant les étapes ci-dessous :

  • Créez une instance de DocumentApi.
  • Créez une instance de FileInfo.
  • Ensuite, définissez le chemin d’accès au fichier PDF d’entrée.
  • Créez une instance de SplitOptions.
  • Ensuite, affectez FileInfo à SplitOptions.
  • Définissez des numéros de page spécifiques dans un tableau séparé par des virgules pour diviser le document.
  • Définissez également le mode de fractionnement du document sur Pages. Il permet à l’API de diviser les numéros de page donnés dans un tableau séparé par des virgules en tant que documents PDF distincts.
  • Créez SplitRequest avec SplitOptions.
  • Enfin, appelez la méthode DocumentAPI.split() avec SplitRequest et obtenez les résultats.

L’extrait de code suivant montre comment fractionner un fichier PDF à l’aide d’une API REST dans Node.js.

// initialisation de l'API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// fournir le chemin du fichier d'entrée
let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// définir les options de fractionnement
let options = new groupdocs_merger_cloud.SplitOptions();
options.fileInfo = fileInfo;
options.outputPath = "Output";
options.pages = [1, 3];
options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Pages;

// créer une demande fractionnée
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// document fractionné
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document Path: " + element.path);
});
Diviser les fichiers PDF en documents d'une page à l'aide de Node.js

Diviser les fichiers PDF en documents d’une page à l’aide de Node.js

Téléchargez les fichiers fractionnés

L’exemple de code ci-dessus enregistrera les fichiers séparés sur le cloud. Vous pouvez les télécharger à l’aide de l’exemple de code suivant :

// initialiser l'API
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let folderApi = new groupdocs_merger_cloud.FolderApi(configuration);

// récupérer la liste des fichiers
var listRequest = new groupdocs_merger_cloud.GetFilesListRequest("Output", myStorage);
let res = await folderApi.getFilesList(listRequest);
res.value.forEach(element => {
  // Telecharger des fichiers
  var request = new groupdocs_merger_cloud.DownloadFileRequest(element.name, myStorage);
  fileApi.downloadFile(request)
    .then(function (response) {
      // enregistrer le fichier image dans le répertoire de travail
      fs.writeFile("C:\\Files\\merger\\downloads\\" + element.name, response, "binary", function (err) { });
      console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Diviser des fichiers PDF en documents PDF multipages à l’aide de Node.js

Vous pouvez diviser des fichiers PDF en documents PDF de plusieurs pages par programmation en suivant les étapes ci-dessous :

  • Créez une instance de DocumentApi.
  • Créez une instance de FileInfo.
  • Ensuite, définissez le chemin d’accès au fichier PDF d’entrée.
  • Créez une instance de SplitOptions.
  • Ensuite, affectez FileInfo à SplitOptions.
  • Définissez l’intervalle des numéros de page à partir duquel diviser dans un tableau séparé par des virgules.
  • Définissez également le mode de fractionnement du document sur Intervalles. Il permet à l’API de diviser les pages du document en fonction des intervalles de page indiqués dans un tableau séparé par des virgules.
  • Créez SplitRequest avec SplitOptions.
  • Enfin, appelez la méthode DocumentAPI.split() avec SplitRequest et obtenez les résultats.

L’extrait de code suivant montre comment diviser un fichier PDF en documents PDF de plusieurs pages à l’aide d’une API REST dans Node.js.

// initialisation de l'API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// fournir le chemin du fichier d'entrée
let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// définir les options de fractionnement
let options = new groupdocs_merger_cloud.SplitOptions();
options.fileInfo = fileInfo;
options.outputPath = "Output";
options.pages = [3, 6, 8];
options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Intervals;

// créer une demande fractionnée
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// document fractionné
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document splitted: " + element.path);
});
Diviser des fichiers PDF en documents PDF multipages à l'aide de Node.js

Diviser des fichiers PDF en documents PDF multipages à l’aide de Node.js

Extraire les pages par plage de pages à l’aide de l’API REST dans Node.js

Vous pouvez extraire et enregistrer des pages d’un fichier PDF en fournissant une plage de numéros de page par programmation en suivant les étapes ci-dessous :

  • Créez une instance de DocumentApi.
  • Créez une instance de FileInfo.
  • Ensuite, définissez le chemin d’accès au fichier PDF d’entrée.
  • Créez une instance de SplitOptions.
  • Ensuite, affectez FileInfo à SplitOptions.
  • Définissez le numéro de la page de début et le numéro de la page de fin.
  • Définissez également le mode de fractionnement du document sur Pages.
  • Créez SplitRequest avec SplitOptions.
  • Enfin, appelez la méthode DocumentAPI.split() avec SplitRequest et obtenez les résultats.

L’extrait de code suivant montre comment diviser un fichier PDF par plage de numéros de page à l’aide d’une API REST dans Node.js.

// initialisation de l'API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// définir les options de fractionnement
let options = new groupdocs_merger_cloud.SplitOptions();
options.fileInfo = fileInfo;
options.outputPath = "Output";
options.startPageNumber = 3;
options.endPageNumber = 7;
options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Pages;

// créer une demande fractionnée
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// document fractionné
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document splitted: " + element.path);
});
Extraire les pages par plage de pages à l'aide de l'API REST dans Node.js

Extraire les pages par plage de pages à l’aide de l’API REST dans Node.js

Essayez en ligne

Veuillez essayer l’outil de fractionnement de PDF en ligne gratuit suivant, qui est développé à l’aide de l’API ci-dessus. https://products.groupdocs.app/splitter/pdf/

Conclusion

Dans cet article, vous avez appris à diviser des documents PDF à l’aide d’une API REST sur le cloud. De plus, vous avez vu comment diviser par programmation des fichiers PDF en documents PDF de plusieurs pages. Cet article a également expliqué comment télécharger par programmation un fichier PDF dans le cloud, puis télécharger les fichiers séparés à partir du cloud. L’API vous permet également de réorganiser ou de remplacer les pages du document, de modifier l’orientation de la page, de gérer les mots de passe des documents et d’effectuer facilement d’autres manipulations pour tout format de fichier pris en charge. En outre, vous pouvez en savoir plus sur l’API GroupDocs.Merge Cloud à l’aide de la documentation. Nous fournissons également une section API Reference qui vous permet de visualiser et d’interagir avec nos API directement via le navigateur. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également