Dividir documentos PDF usando a API REST no Node.js

Você pode precisar dividir arquivos PDF em vários arquivos programaticamente. Ao dividir documentos PDF, você pode facilmente extrair e compartilhar uma informação específica ou um conjunto de dados com as partes interessadas. Como desenvolvedor Node.js, você pode dividir documentos PDF em vários documentos na nuvem. Neste artigo, você aprenderá como dividir documentos PDF usando uma API REST no Node.js.

Os seguintes tópicos serão abordados neste artigo:

API REST do divisor de PDF e SDK do Node.js

Para dividir arquivos PDF, usarei a API Node.js SDK of GroupDocs.Merger Cloud. Ele permite que você divida, combine, remova e reorganize uma única página ou uma coleção de páginas de formatos de documento suportados de Word, Excel, PowerPoint, Desenhos do Visio, PDF e HTML.

Você pode instalar o GroupDocs.Merger Cloud em seu aplicativo Node.js usando o seguinte comando no console:

npm install groupdocs-merger-cloud

Por favor, obtenha seu ID e Segredo do cliente no painel antes de seguir as etapas mencionadas. Depois de ter seu ID e segredo, adicione o código conforme mostrado abaixo:

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

Dividir documentos PDF em documentos de uma página usando a API REST no Node.js

Você pode dividir arquivos PDF programaticamente na nuvem seguindo as etapas simples mencionadas abaixo:

Carregar o arquivo PDF

Em primeiro lugar, carregue o arquivo PDF para a nuvem usando o exemplo de código abaixo:

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

// ler arquivos um por um
fs.readFile(file, (err, fileStream) => {
  // criar solicitação de upload de arquivo
  let request = new groupdocs_merger_cloud.UploadFileRequest("ten-pages.pdf", fileStream, myStorage);
  // subir arquivo
  fileApi.uploadFile(request)
});

Como resultado, o arquivo PDF carregado estará disponível na seção de arquivos do seu painel na nuvem.

Dividir documentos PDF usando a API REST no Node.js

Você pode facilmente dividir as páginas de qualquer arquivo PDF em documentos PDF separados que consistem em uma página em um documento programaticamente seguindo as etapas abaixo:

  • Crie uma instância de DocumentApi.
  • Crie uma instância do FileInfo.
  • Em seguida, defina o caminho para o arquivo PDF de entrada.
  • Crie uma instância do SplitOptions.
  • Em seguida, atribua FileInfo a SplitOptions.
  • Defina números de página específicos em uma matriz separada por vírgulas para dividir o documento.
  • Além disso, defina o modo de divisão do documento como Páginas. Ele permite que a API divida os números de página fornecidos em uma matriz separada por vírgulas como documentos PDF separados.
  • Crie SplitRequest com SplitOptions.
  • Por fim, chame o método DocumentAPI.split() com SplitRequest e obtenha os resultados.

O trecho de código a seguir mostra como dividir um arquivo PDF usando uma API REST no Node.js.

// inicialização da API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// forneça o caminho do arquivo de entrada
let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// definir opções de divisão
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;

// criar solicitação de divisão
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// dividir documento
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document Path: " + element.path);
});
Dividir arquivos PDF em documentos de uma página usando Node.js

Dividir arquivos PDF em documentos de uma página usando Node.js

Baixe os arquivos divididos

O exemplo de código acima salvará os arquivos separados na nuvem. Você pode baixá-los usando o seguinte exemplo de código:

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

// recuperar lista de arquivos
var listRequest = new groupdocs_merger_cloud.GetFilesListRequest("Output", myStorage);
let res = await folderApi.getFilesList(listRequest);
res.value.forEach(element => {
  // baixar arquivos
  var request = new groupdocs_merger_cloud.DownloadFileRequest(element.name, myStorage);
  fileApi.downloadFile(request)
    .then(function (response) {
      // salvar arquivo de imagem no diretório de trabalho
      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);
    });
});

Dividir arquivos PDF em documentos PDF de várias páginas usando Node.js

Você pode dividir arquivos PDF em documentos PDF de várias páginas programaticamente seguindo as etapas abaixo:

  • Crie uma instância de DocumentApi.
  • Crie uma instância do FileInfo.
  • Em seguida, defina o caminho para o arquivo PDF de entrada.
  • Crie uma instância do SplitOptions.
  • Em seguida, atribua FileInfo a SplitOptions.
  • Defina o intervalo de números de página de onde dividir em uma matriz separada por vírgulas.
  • Além disso, defina o modo de divisão do documento como Intervalos. Ele permite que a API divida as páginas do documento com base nos intervalos de página fornecidos em uma matriz separada por vírgulas.
  • Crie SplitRequest com SplitOptions.
  • Por fim, chame o método DocumentAPI.split() com SplitRequest e obtenha os resultados.

O trecho de código a seguir mostra como dividir um arquivo PDF em documentos PDF de várias páginas usando uma API REST no Node.js.

// inicialização da API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// forneça o caminho do arquivo de entrada
let fileInfo = new groupdocs_merger_cloud.FileInfo();
fileInfo.filePath = "ten-pages.pdf";

// definir opções de divisão
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;

// criar solicitação de divisão
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// dividir documento
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document splitted: " + element.path);
});
Dividir arquivos PDF em documentos PDF de várias páginas usando Node.js

Dividir arquivos PDF em documentos PDF de várias páginas usando Node.js

Extrair páginas por intervalo de páginas usando a API REST no Node.js

Você pode extrair e salvar páginas de um arquivo PDF fornecendo um intervalo de números de página programaticamente seguindo as etapas abaixo:

  • Crie uma instância de DocumentApi.
  • Crie uma instância do FileInfo.
  • Em seguida, defina o caminho para o arquivo PDF de entrada.
  • Crie uma instância do SplitOptions.
  • Em seguida, atribua FileInfo a SplitOptions.
  • Defina o número da página inicial e o número da página final.
  • Além disso, defina o modo de divisão do documento como Páginas.
  • Crie SplitRequest com SplitOptions.
  • Por fim, chame o método DocumentAPI.split() com SplitRequest e obtenha os resultados.

O trecho de código a seguir mostra como dividir um arquivo PDF por intervalo de números de página usando uma API REST em Node.js.

// inicialização da API
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

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

// definir opções de divisão
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;

// criar solicitação de divisão
let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);

// dividir documento
let result = await documentApi.split(splitRequest);
result.documents.forEach(element => {
  console.log("Document splitted: " + element.path);
});
Extrair páginas por intervalo de páginas usando a API REST no Node.js

Extrair páginas por intervalo de páginas usando a API REST no Node.js

Experimente on-line

Experimente a seguinte ferramenta divisora de PDF on-line gratuita, desenvolvida usando a API acima. https://products.groupdocs.app/splitter/pdf/

Conclusão

Neste artigo, você aprendeu como dividir documentos PDF usando uma API REST na nuvem. Além disso, você viu como dividir arquivos PDF em documentos PDF de várias páginas programaticamente. Este artigo também explicou como carregar programaticamente um arquivo PDF para a nuvem e, em seguida, baixar os arquivos separados da nuvem. A API também permite que você reordene ou substitua páginas de documentos, altere a orientação da página, gerencie senhas de documentos e execute outras manipulações facilmente para qualquer formato de arquivo compatível. Além disso, você pode aprender mais sobre GroupDocs.Merge Cloud API usando a documentação. Também fornecemos uma seção Referência de API que permite visualizar e interagir com nossas APIs diretamente pelo navegador. Em caso de ambiguidade, sinta-se à vontade para nos contatar no fórum.

Veja também