如何使用 Node.js 將 Word 文檔拆分為單獨的文件

如何使用 Node.js 將 Word 文檔拆分為單獨的文件

您可能需要將 Word 文檔拆分成幾個較小的文件並將它們分配給不同的人以加快該過程。通過拆分 Word 文檔,您可以輕鬆提取特定信息或數據集並與利益相關者共享。作為 Node.js 開發者,您可以在雲端將 word 文檔拆分為多個文檔。本文不是手動剪切和粘貼,而是向您展示如何使用 Node.js 將 Word 文檔拆分為單獨的文件。

本文將涵蓋以下主題:

Word DOC 拆分器 REST API 和 Node.js SDK

要拆分 Word 文件,我將使用 GroupDocs.Merger Cloud 的 Node.js SDK API。它允許您從 WordExcelPowerPoint支持的文檔格式 中拆分、合併、刪除和重新排列單個頁面或一組頁面, Visio 繪圖PDFHTML

您可以在控制台中使用以下命令在您的 Node.js 應用程序上安裝 GroupDocs.Merger Cloud:

npm install groupdocs-merger-cloud

在執行上述步驟之前,請從儀表板獲取您的客戶端 ID 和密碼。獲得 ID 和密碼後,添加如下所示的代碼:

# 從 http://api.groupdocs.cloud 在您的節點應用程序中導入 Node.js SDK
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");

// 從 https://dashboard.groupdocs.cloud 獲取 clientId 和 clientSecret(需要免費註冊)。
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";

在 Node.js 中使用 REST API 將 Word 文檔拆分為一頁文檔

您可以按照下面提到的簡單步驟以編程方式在雲上拆分 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 文件可以在雲上儀表板的 文件部分 中訪問。

在 Node.js 中使用 REST API 拆分 Word 文檔

您可以按照以下步驟以編程方式輕鬆地將任何 Word 文件的頁面拆分為單獨的 Word 文檔,這些文檔由文檔中的頁面組成。

  • 創建 DocumentApi 的實例。
  • 創建 FileInfo 的實例。
  • 然後,設置輸入字文件的路徑。
  • 創建 SplitOptions 的實例。
  • 然後,將文件信息分配給拆分選項。
  • 在以逗號分隔的數組中設置特定頁碼以拆分文檔。
  • 另外,將文檔拆分模式設置為頁面。它允許 API 將以逗號分隔的數組中給出的頁碼拆分為單獨的 Word 文檔。
  • 使用拆分選項創建拆分請求。
  • 最後,用 SplitRequest 調用 DocumentAPI.split() 方法並得到結果。

以下代碼片段顯示瞭如何在 Node.js 中使用 REST API 拆分 word 文件:

// 如何在 Node.js 中使用 REST API 將 Word 文檔拆分為單頁文檔
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);
    });

使用 Node.js 將 Word 文件拆分為多頁 Word 文檔

您可以按照以下步驟以編程方式將 word 文件拆分為多頁 word 文檔:

  • 創建 DocumentApi 的實例。
  • 創建 FileInfo 的實例。
  • 然後,設置輸入字文件的路徑。
  • 創建 SplitOptions 的實例。
  • 然後,將文件信息分配給拆分選項。
  • 設置以逗號分隔的數組中要拆分的頁碼間隔。
  • 此外,將文檔拆分模式設置為間隔。它允許 API 根據以逗號分隔的數組中給定的頁面間隔拆分文檔頁面。
  • 使用拆分選項創建拆分請求。
  • 最後用Split Request調用DocumentAPI.split()方法得到結果。

以下代碼片段顯示瞭如何使用 Node.js 中的 REST API 將一個 word 文件拆分為多頁 word 文檔:

// 如何使用 Node.js 將 Word 文件拆分為多頁 Word 文檔
const splitspecific = async () => {

  // 接口初始化
  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);
})

在 Node.js 中使用 REST API 按頁面範圍分隔頁面

接下來,按照以下步驟以編程方式提供一系列頁碼,從 Word 文件中提取並保存頁面:

  • 創建 DocumentApi 的實例。
  • 創建 FileInfo 的實例。
  • 然後,設置輸入字文件的路徑。
  • 創建 SplitOptions 的實例。
  • 然後,將文件信息分配給拆分選項。
  • 設置起始頁碼和結束頁碼。
  • 另外,將文檔拆分模式設置為頁面。
  • 使用拆分選項創建拆分請求。
  • 最後用Split Request調用DocumentAPI.split()方法得到結果。

以下代碼片段顯示瞭如何使用 Node.js 中的 REST API 按頁碼範圍拆分 word 文件:

// 如何在 Node.js 中使用 REST API 按頁面範圍分隔頁面
const splitpages = async () => {

  // 接口初始化
  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 文檔;
  • 如何以編程方式將word文件拆分為多頁word文檔;
  • 以編程方式將word文件上傳到雲端,然後從雲端下載分離的文件;

API 還使您能夠重新排序或替換文檔頁面、更改頁面方向、管理文檔密碼以及對任何支持的文件格式輕鬆執行其他操作。此外,您可以使用 文檔 了解有關 GroupDocs.Merge Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。

此外,我們建議您閱讀我們的入門指南

Groupdocs.cloud 將繼續撰寫有關新主題的文章。因此,請聯繫以獲取最新更新。

問一個問題

您可以通過我們的免費支持論壇 詢問有關如何拆分 word 文檔的問題

常見問題

如何在 Node.js 中分隔 Word 文檔中的頁面?

請按照 Node.js 代碼片段 學習如何快速輕鬆地將一個 word 文檔拆分為多個文件。您可以訪問文檔 了解完整的 API 詳細信息。

也可以看看

有關我們建議您訪問以下文章的更多信息: