Como dividir documento do Word em arquivos separados usando Node.js

Como dividir documentos do Word em arquivos separados usando Node.js

Pode ser necessário dividir o documento Word em vários arquivos menores e atribuí-los a pessoas diferentes para acelerar o processo. Ao dividir documentos do Word, você pode facilmente extrair e compartilhar informações específicas ou conjuntos de dados com as partes interessadas. Como desenvolvedor Node.js, você pode dividir documentos do Word em vários documentos na nuvem. Em vez de recortar e colar manualmente, este artigo mostrará como dividir um documento do Word em arquivos separados usando o Node.js.

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

API REST do Word DOC Splitter e SDK Node.js

Para dividir arquivos do Word, vou usar 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 com este 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:

# Importe o SDK do Node.js em seu aplicativo de nó de http://api.groupdocs.cloud
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");

// obtenha clientId e clientSecret em https://dashboard.groupdocs.cloud (é necessário registro gratuito).
global.clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
global.clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
global.myStorage = "test-internal-storage";
const config = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Divida o documento do Word em documentos de uma página usando a API REST no Node.js

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

  • Carregar o arquivo de palavras para a nuvem
  • Dividir documentos do Word usando API REST em Node.js
  • Baixar os arquivos separados

Carregue o arquivo do Word

Primeiro, você precisa carregar o arquivo do Word na nuvem usando o código de exemplo abaixo:

// abra o arquivo no IOStream da unidade do sistema.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.docx';
// ler arquivo
fs.readFile(resourcesFolder, (err, fileStream) => {
  // construir FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // criar solicitação de upload de arquivo
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.docx", fileStream, myStorage);
  // subir arquivo
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Isso tornará o arquivo do Word baixado acessível na seção de arquivos do seu painel na nuvem.

Dividir documento do Word usando API REST em Node.js

Você pode facilmente dividir as páginas de qualquer arquivo do Word em documentos do Word separados compostos por uma página dentro de um documento programaticamente seguindo as etapas.

  • Crie uma instância de DocumentApi.
  • Crie uma instância do FileInfo.
  • Em seguida, defina o caminho para o arquivo de palavras de entrada.
  • Crie uma instância de SplitOptions.
  • Em seguida, atribua as informações do arquivo às opções de divisão.
  • 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 separados do Word.
  • Crie SplitRequest com opções de divisão.
  • 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 de palavras usando uma API REST no Node.js:

// Como dividir documento do Word em documentos de uma página usando a API REST no Node.js
const split = async () => {

  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
   
  let options = new groupdocs_merger_cloud.SplitOptions();
  options.fileInfo = new groupdocs_merger_cloud.FileInfo();
  options.fileInfo.filePath = "nodejs-testing/sample-file.docx";  
  options.outputPath = "nodejs-testing/split-file.docx";
  options.pages = [1, 3];
  options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Pages;

  try {
    // Criar solicitação de divisão de documentos
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options)
    let result = await documentApi.split(splitRequest);
  } 
  catch (err) {
    throw err;
  }
}

split()
.then(() => {
  console.log("Successfully split word docx: ");
})
.catch((err) => {
  console.log("Error occurred while splitting the word file:", err);
})

Baixe os arquivos divididos

O exemplo de código mencionado acima salvará os arquivos divididos na nuvem. Agora, você pode baixar arquivos usando o seguinte exemplo de código:

// construir FileApi para baixar o arquivo mesclado
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// criar solicitação de download de arquivo
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/split-file.docx", myStorage);
// arquivo de download e tipo de resposta Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // salve o arquivo no diretório do sistema
        fs.writeFile("H:\\groupdocs-cloud-data\\split-file.docx", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

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

Você pode dividir arquivos do Word em documentos do Word 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 de palavras de entrada.
  • Crie uma instância de SplitOptions.
  • Em seguida, atribua as informações do arquivo às opções de divisão.
  • 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 opções de divisão.
  • Por fim, chame o método DocumentAPI.split() com Split Request e obtenha os resultados.

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

// Como dividir arquivos do Word em documentos do Word de várias páginas usando Node.js
const splitspecific = async () => {

  // 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 = "nodejs-testing/sample-file.docx";

  // definir opções de divisão
  let options = new groupdocs_merger_cloud.SplitOptions();
  options.fileInfo = fileInfo;
  options.outputPath = "nodejs-testing/split-file.docx";
  options.pages = [3, 6, 8];
  options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Intervals;

  try {
    // criar solicitação de divisão
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // dividir documento
    let result = await documentApi.split(splitRequest);
  } 
  catch (err) {
    throw err;
  }
}

splitspecific()
.then(() => {
  console.log("Successfully specific pages of word file: ");
})
.catch((err) => {
  console.log("Error occurred while splitting the word doc:", err);
})

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

Em seguida, extraia e salve as páginas de um arquivo do Word, 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 de palavras de entrada.
  • Crie uma instância de SplitOptions.
  • Em seguida, atribua as informações do arquivo às opções de divisão.
  • 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 opções de divisão.
  • Por fim, chame o método DocumentAPI.split() com Split Request e obtenha os resultados.

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

// Como separar páginas por intervalo de páginas usando a API REST no Node.js
const splitpages = async () => {

  // 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 = "nodejs-testing/sample-file.docx";

  // definir opções de divisão
  let options = new groupdocs_merger_cloud.SplitOptions();
  options.fileInfo = fileInfo;
  options.outputPath = "nodejs-testing/split-file.docx";
  options.startPageNumber = 3;
  options.endPageNumber = 7;
  options.mode = groupdocs_merger_cloud.SplitOptions.ModeEnum.Pages;

  try {
    // criar solicitação de divisão
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // dividir documento
    let result = await documentApi.split(splitRequest);
  } 
  catch (err) {
    throw err;
  }
}

splitpages()
.then(() => {
  console.log("Successfully specific pages of word file: ");
})
.catch((err) => {
  console.log("Error occurred while splitting the word doc:", err);
})

Experimente on-line

Tente a seguinte ferramenta divisora de palavras on-line gratuita, que foi desenvolvida usando a API acima.

Conclusão

Neste artigo, aprendemos:

  • como dividir documentos do Word usando uma API REST na nuvem;
  • como dividir arquivos de texto em documentos de várias páginas de forma programática;
  • carregue programaticamente um arquivo de palavras para a nuvem e, em seguida, baixe 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.

Além disso, recomendamos que você leia nosso Guia de primeiros passos.

Groupdocs.cloud continuará a escrever artigos sobre novos tópicos. Portanto, entre em contato para obter as atualizações mais recentes.

Faça uma pergunta

Você pode tirar suas dúvidas sobre como dividir documentos do Word, através do nosso Fórum de Suporte Gratuito

perguntas frequentes

Como faço para separar páginas em um documento do Word no Node.js?

Siga snippet de código Node.js para aprender como dividir um documento do Word em vários arquivos, de forma rápida e fácil. Você pode visitar a documentação para obter detalhes completos da API.

Veja também

Para obter mais informações sobre o que recomendamos que você visite os seguintes artigos: