Как разделить документ Word на отдельные файлы с помощью Node.js

Как разделить документы Word на отдельные файлы с помощью Node.js

Возможно, вам придется разделить документ Word на несколько файлов меньшего размера и назначить их разным людям, чтобы ускорить процесс. Разделяя документы Word, вы можете легко извлекать конкретную информацию или наборы данных и делиться ими с заинтересованными сторонами. Как разработчик Node.js, вы можете разделить документы Word на несколько документов в облаке. Вместо того, чтобы вырезать и вставлять вручную, эта статья покажет вам, как разделить документ Word на отдельные файлы с помощью Node.js.

В этой статье будут затронуты следующие темы:

Word DOC Splitter REST API и Node.js SDK

Чтобы разделить файлы Word, я буду использовать Node.js SDK of GroupDocs.Merger Cloud API. Он позволяет вам разделять, объединять, удалять и переупорядочивать одну страницу или набор страниц из поддерживаемых форматов документов из Word, Excel, PowerPoint, Чертежи Visio, PDF и HTML.

Вы можете установить GroupDocs.Merger Cloud в свое приложение Node.js с помощью этой команды в консоли:

npm install groupdocs-merger-cloud

Пожалуйста, получите свой идентификатор клиента и секрет из панели инструментов, прежде чем выполнять указанные шаги. Получив свой идентификатор и секрет, добавьте код, как показано ниже:

# Импортируйте Node.js SDK в приложение узла с http://api.groupdocs.cloud.
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");

// получить clientId и clientSecret с https://dashboard.groupdocs.cloud (требуется бесплатная регистрация).
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";

Разделить документ Word на одностраничные документы с помощью REST API в Node.js

Вы можете программно разделить файлы Word в облаке, выполнив простые шаги, указанные ниже:

Загрузите файл Word

Во-первых, вам необходимо загрузить файл Word в облако, используя приведенный ниже пример кода:

// откройте файл в IOStream с вашего системного диска.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.docx';
// прочитать файл
fs.readFile(resourcesFolder, (err, fileStream) => {
  // построить FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // создать запрос на загрузку файла
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.docx", fileStream, myStorage);
  // загрузить файл
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Это сделает загруженный файл Word доступным в разделе файлов вашей панели инструментов в облаке.

Разделить документ Word с помощью REST API в Node.js

Вы можете легко разделить страницы любого файла Word на отдельные документы Word, состоящие из страницы внутри документа, программно, выполнив следующие действия.

  • Создайте экземпляр DocumentApi.
  • Создайте экземпляр FileInfo.
  • Затем укажите путь к файлу входных слов.
  • Создайте экземпляр SplitOptions.
  • Затем назначьте информацию о файле параметрам разделения.
  • Задайте определенные номера страниц в массиве, разделенном запятыми, чтобы разделить документ.
  • Кроме того, установите режим разделения документа на Страницы. Это позволяет API разбивать номера страниц, указанные в массиве, разделенном запятыми, как отдельные документы Word.
  • Создайте SplitRequest с параметрами разделения.
  • Наконец, вызовите метод DocumentAPI.split() с помощью SplitRequest и получите результаты.

В следующем фрагменте кода показано, как разделить текстовый файл с помощью REST API в Node.js:

// Как разделить документ Word на одностраничные документы с помощью REST API в 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 {
    // Создать разделенный запрос документов
    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);
})

Загрузите разделенные файлы

Вышеупомянутый пример кода сохранит разделенные файлы в облаке. Теперь вы можете загружать файлы, используя следующий пример кода:

// построить FileApi для загрузки объединенного файла
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// создать запрос на загрузку файла
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/split-file.docx", myStorage);
// скачать файл и тип ответа Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // сохранить файл в системном каталоге
        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);
    });

Разделите файлы Word на многостраничные документы Word с помощью Node.js

Вы можете программно разделить текстовые файлы на многостраничные текстовые документы, выполнив следующие действия:

  • Создайте экземпляр DocumentApi.
  • Создайте экземпляр FileInfo.
  • Затем укажите путь к файлу входных слов.
  • Создайте экземпляр SplitOptions.
  • Затем назначьте информацию о файле параметрам разделения.
  • Установите интервал номеров страниц, от которого следует разделить массив с разделителями-запятыми.
  • Кроме того, установите режим разделения документа на «Интервалы». Это позволяет API разбивать страницы документа на основе интервалов страниц, указанных в массиве, разделенном запятыми.
  • Создайте SplitRequest с параметрами разделения.
  • Наконец, вызовите метод DocumentAPI.split() с раздельным запросом и получите результаты.

В следующем фрагменте кода показано, как разбить текстовый файл на многостраничные текстовые документы с помощью REST API в Node.js:

// Как разделить файлы Word на многостраничные документы Word с помощью Node.js
const splitspecific = async () => {

  // инициализация API
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // укажите путь к входному файлу
  let fileInfo = new groupdocs_merger_cloud.FileInfo();
  fileInfo.filePath = "nodejs-testing/sample-file.docx";

  // определить параметры разделения
  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 {
    // создать разделенный запрос
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // разделить документ
    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);
})

Разделение страниц по диапазону страниц с помощью REST API в Node.js

Затем извлеките и сохраните страницы из файла Word, программно указав диапазон номеров страниц, выполнив следующие шаги:

  • Создайте экземпляр DocumentApi.
  • Создайте экземпляр FileInfo.
  • Затем укажите путь к файлу входных слов.
  • Создайте экземпляр SplitOptions.
  • Затем назначьте информацию о файле параметрам разделения.
  • Установите номер начальной страницы и номер конечной страницы.
  • Кроме того, установите режим разделения документа на Страницы.
  • Создайте SplitRequest с параметрами разделения.
  • Наконец, вызовите метод DocumentAPI.split() с раздельным запросом и получите результаты.

В следующем фрагменте кода показано, как разделить текстовый файл по диапазону номеров страниц с помощью REST API в Node.js:

// Как разделить страницы по диапазону страниц с помощью REST API в Node.js
const splitpages = async () => {

  // инициализация API
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // укажите путь к входному файлу
  let fileInfo = new groupdocs_merger_cloud.FileInfo();
  fileInfo.filePath = "nodejs-testing/sample-file.docx";

  // определить параметры разделения
  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 {
    // создать разделенный запрос
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // разделить документ
    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);
})

Попробуйте онлайн

Попробуйте следующий бесплатный онлайн-инструмент для разделения слов, разработанный с использованием вышеуказанного API.

Заключение

В этой статье мы узнали:

  • как разделить текстовые документы с помощью REST API в облаке;
  • как программно разбить текстовые файлы на многостраничные текстовые документы;
  • программно загрузить файл word в облако, а затем загрузить отдельные файлы из облака;

API также позволяет вам переупорядочивать или заменять страницы документа, изменять ориентацию страниц, управлять паролями документов и легко выполнять другие манипуляции для любого поддерживаемого формата файлов. Кроме того, вы можете узнать больше о GroupDocs.Merge Cloud API, воспользовавшись документацией. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер.

Кроме того, мы рекомендуем вам прочитать наше Руководство по началу работы

Groupdocs.cloud продолжит писать статьи на новые темы. Поэтому, пожалуйста, свяжитесь с нами для получения последних обновлений.

Задайте вопрос

Вы можете задать свои вопросы о том, как разделить документы Word, через наш Бесплатный форум поддержки

Часто задаваемые вопросы

Как разделить страницы в документе Word в Node.js?

Воспользуйтесь фрагментом кода Node.js, чтобы узнать, как быстро и легко разбить документ Word на несколько файлов. Вы можете посетить документацию для получения полной информации об API.

Смотрите также

Для получения дополнительной информации о том, что мы рекомендуем вам посетить следующие статьи: