Cómo dividir un documento de Word en archivos separados usando Node.js

Cómo dividir documentos de Word en archivos separados usando Node.js

Es posible que deba dividir el documento Word en varios archivos más pequeños y asignarlos a diferentes personas para acelerar el proceso. Al dividir los documentos de Word, puede extraer y compartir fácilmente información o conjuntos de datos específicos con las partes interesadas. Como desarrollador de Node.js, puede dividir documentos de Word en varios documentos en la nube. En lugar de cortar y pegar manualmente, este artículo le mostrará cómo dividir un documento de Word en archivos separados usando Node.js.

En este artículo se tratarán los siguientes temas:

Word DOC Splitter REST API y Node.js SDK

Para dividir archivos de Word, usaré Node.js SDK of GroupDocs.Merger Cloud API. Le permite dividir, combinar, eliminar y reorganizar una sola página o una colección de páginas de formatos de documentos admitidos de Word, Excel, PowerPoint, Dibujos de Visio, PDF y HTML.

Puede instalar GroupDocs.Merger Cloud en su aplicación Node.js con este comando en la consola:

npm install groupdocs-merger-cloud

Por favor, obtenga su ID de cliente y secreto del tablero antes de seguir los pasos mencionados. Una vez que tenga su ID y secreto, agregue el código como se muestra a continuación:

# Importe el SDK de Node.js en su aplicación de nodo desde http://api.groupdocs.cloud
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");

// obtenga clientId y clientSecret de https://dashboard.groupdocs.cloud (se requiere 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 el documento de Word en documentos de una página usando la API REST en Node.js

Puede dividir archivos de Word mediante programación en la nube siguiendo los sencillos pasos que se mencionan a continuación:

  • Subir el archivo de Word a la Nube
  • Dividir documentos de Word usando REST API en Node.js
  • Descargar los archivos separados

Sube el archivo de Word

Primero, debe cargar el archivo de Word en la nube usando el código de muestra a continuación:

// abra el archivo en IOStream desde la unidad de su sistema.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.docx';
// leer archivo
fs.readFile(resourcesFolder, (err, fileStream) => {
  // construir FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // crear solicitud de carga de archivo
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.docx", fileStream, myStorage);
  // subir archivo
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Esto hará que el archivo de Word descargado sea accesible en la sección de archivos de su tablero en la nube.

Dividir documento de Word usando REST API en Node.js

Puede dividir fácilmente páginas de cualquier archivo de Word en documentos de Word separados compuestos por una página dentro de un documento mediante programación siguiendo los pasos.

  • Cree una instancia de DocumentApi.
  • Cree una instancia de FileInfo.
  • Luego, configure la ruta al archivo de palabra de entrada.
  • Cree una instancia de SplitOptions.
  • Luego, asigne Información de archivo a las Opciones de división.
  • Establezca números de página específicos en una matriz separada por comas para dividir el documento.
  • Además, configure el modo de división del documento en Páginas. Permite que la API divida los números de página dados en una matriz separada por comas como documentos de Word separados.
  • Crear SplitRequest con opciones de división.
  • Finalmente, llame al método DocumentAPI.split() con SplitRequest y obtenga resultados.

El siguiente fragmento de código muestra cómo dividir un archivo de Word usando una API REST en Node.js:

// Cómo dividir un documento de Word en documentos de una página usando la API REST en 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 {
    // Crear solicitud de documentos divididos
    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);
})

Descargar los archivos divididos

El ejemplo de código antes mencionado guardará los archivos divididos en la nube. Ahora, puede descargar archivos usando el siguiente ejemplo de código:

// construir FileApi para descargar el archivo combinado
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// crear solicitud de archivo de descarga
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/split-file.docx", myStorage);
// descargar archivo y tipo de respuesta Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // guardar el archivo en el directorio de su 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 archivos de Word en documentos de Word de varias páginas con Node.js

Puede dividir archivos de Word en documentos de Word de varias páginas mediante programación siguiendo los pasos que se detallan a continuación:

  • Cree una instancia de DocumentApi.
  • Cree una instancia de FileInfo.
  • Luego, configure la ruta al archivo de palabra de entrada.
  • Cree una instancia de SplitOptions.
  • Luego, asigne Información de archivo a las Opciones de división.
  • Establezca el intervalo de números de página desde donde dividir en una matriz separada por comas.
  • Además, establezca el modo de división del documento en Intervalos. Permite que la API divida las páginas del documento en función de los intervalos de página dados en una matriz separada por comas.
  • Crear SplitRequest con opciones de división.
  • Finalmente, llame al método DocumentAPI.split() con Split Request y obtenga resultados.

El siguiente fragmento de código muestra cómo dividir un archivo de Word en documentos de Word de varias páginas mediante una API REST en Node.js:

// Cómo dividir archivos de Word en documentos de Word de varias páginas usando Node.js
const splitspecific = async () => {

  // inicialización de la API
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // proporcionar la ruta del archivo de entrada
  let fileInfo = new groupdocs_merger_cloud.FileInfo();
  fileInfo.filePath = "nodejs-testing/sample-file.docx";

  // definir opciones de división
  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 {
    // crear solicitud dividida
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // documento dividido
    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);
})

Separar páginas por rango de páginas usando la API REST en Node.js

A continuación, extraiga y guarde páginas de un archivo de Word proporcionando un rango de números de página mediante programación siguiendo los pasos que se indican a continuación:

  • Cree una instancia de DocumentApi.
  • Cree una instancia de FileInfo.
  • Luego, configure la ruta al archivo de palabra de entrada.
  • Cree una instancia de SplitOptions.
  • Luego, asigne Información de archivo a las Opciones de división.
  • Establezca el número de la página de inicio y el número de la página final.
  • Además, configure el modo de división del documento en Páginas.
  • Crear SplitRequest con opciones de división.
  • Finalmente, llame al método DocumentAPI.split() con Split Request y obtenga resultados.

El siguiente fragmento de código muestra cómo dividir un archivo de Word por rango de números de página usando una API REST en Node.js:

// Cómo separar páginas por rango de páginas usando la API REST en Node.js
const splitpages = async () => {

  // inicialización de la API
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // proporcionar la ruta del archivo de entrada
  let fileInfo = new groupdocs_merger_cloud.FileInfo();
  fileInfo.filePath = "nodejs-testing/sample-file.docx";

  // definir opciones de división
  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 {
    // crear solicitud dividida
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // documento dividido
    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);
})

Prueba en línea

Pruebe la siguiente herramienta gratuita de división de palabras en línea, que se desarrolla utilizando la API anterior.

Conclusión

En este artículo hemos aprendido:

  • cómo dividir documentos de Word usando una API REST en la nube;
  • cómo dividir archivos de Word en documentos de Word de varias páginas mediante programación;
  • cargue mediante programación un archivo de Word en la nube y luego descargue los archivos separados de la nube;

La API también le permite reordenar o reemplazar páginas de documentos, cambiar la orientación de la página, administrar contraseñas de documentos y realizar otras manipulaciones fácilmente para cualquier formato de archivo compatible. Además, puede obtener más información sobre GroupDocs.Merge Cloud API utilizando la documentación. También proporcionamos una sección Referencia de API que le permite visualizar e interactuar con nuestras API directamente a través del navegador.

Además, le recomendamos que lea nuestra Guía de introducción

Groupdocs.cloud continuará escribiendo artículos sobre nuevos temas. Por lo tanto, póngase en contacto para obtener las últimas actualizaciones.

Hacer una pregunta

Puede hacer sus consultas sobre cómo dividir documentos de Word, a través de nuestro Foro de soporte gratuito

preguntas frecuentes

¿Cómo separo páginas en un documento de Word en Node.js?

Siga fragmento de código de Node.js para aprender a dividir un documento de Word en varios archivos, de forma rápida y sencilla. Puede visitar la documentación para obtener detalles completos de la API.

Ver también

Para más información sobre lo que te recomendamos visitar los siguientes artículos: