Cách chia tài liệu Word thành các tệp riêng biệt bằng Node.js

Cách chia tài liệu Word thành các tệp riêng biệt bằng Node.js

Bạn có thể cần chia tài liệu Word thành nhiều tệp nhỏ hơn và chỉ định chúng cho những người khác nhau để tăng tốc quá trình. Bằng cách chia nhỏ tài liệu Word, bạn có thể dễ dàng trích xuất và chia sẻ thông tin hoặc bộ dữ liệu cụ thể với các bên liên quan. Là nhà phát triển Node.js, bạn có thể chia tài liệu từ thành nhiều tài liệu trên đám mây. Thay vì cắt và dán thủ công, bài viết này sẽ chỉ cho bạn cách chia tài liệu Word thành các tệp riêng biệt bằng Node.js.

Các chủ đề sau sẽ được đề cập trong bài viết này:

Word DOC Splitter REST API và Node.js SDK

Để chia nhỏ tệp Word, tôi sẽ sử dụng Node.js SDK của GroupDocs.Merger Cloud API. Nó cho phép bạn tách, kết hợp, xóa và sắp xếp lại một trang hoặc một tập hợp các trang từ các định dạng tài liệu được hỗ trợ của Word, Excel, PowerPoint, Bản vẽ Visio, PDFHTML.

Bạn có thể cài đặt GroupDocs.Merger Cloud trên ứng dụng Node.js của mình bằng lệnh này trong bảng điều khiển:

npm install groupdocs-merger-cloud

Vui lòng lấy Client ID và Secret của bạn từ bảng điều khiển trước khi làm theo các bước được đề cập. Khi bạn có ID và bí mật của mình, hãy thêm mã như hình bên dưới:

# Nhập SDK Node.js trong ứng dụng nút của bạn từ http://api.groupdocs.cloud
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");

// lấy clientId và clientSecret từ https://dashboard.groupdocs.cloud (yêu cầu đăng ký miễn phí).
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";

Chia tài liệu Word thành tài liệu một trang bằng API REST trong Node.js

Bạn có thể chia nhỏ các tệp từ theo chương trình trên đám mây bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

Tải lên tệp Word

Trước tiên, bạn được yêu cầu tải tệp Word lên đám mây bằng mã mẫu bên dưới:

// mở tệp trong IOStream từ ổ đĩa hệ thống của bạn.
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.docx';
// Đọc tài liệu
fs.readFile(resourcesFolder, (err, fileStream) => {
  // xây dựng FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // tạo yêu cầu tệp tải lên
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.docx", fileStream, myStorage);
  // cập nhật dử liệu
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

Điều này sẽ làm cho tệp Word đã tải xuống có thể truy cập được trong phần tệp của trang tổng quan của bạn trên đám mây.

Tách tài liệu Word bằng API REST trong Node.js

Bạn có thể dễ dàng tách các trang của bất kỳ tệp Word nào thành các tài liệu Word riêng biệt bao gồm một trang trong tài liệu theo chương trình bằng cách làm theo các bước.

  • Tạo một phiên bản của DocumentApi.
  • Tạo một phiên bản của FileInfo.
  • Sau đó, đặt đường dẫn đến tệp từ đầu vào.
  • Tạo một phiên bản của SplitOptions.
  • Sau đó, gán Thông tin tệp cho Tùy chọn phân tách.
  • Đặt số trang cụ thể trong một mảng được phân tách bằng dấu phẩy để phân chia tài liệu.
  • Ngoài ra, hãy đặt chế độ chia tài liệu thành Trang. Nó cho phép API phân tách các số trang được cung cấp trong mảng được phân tách bằng dấu phẩy thành các tài liệu Word riêng biệt.
  • Tạo SplitRequest với Split Options.
  • Cuối cùng, gọi phương thức DocumentAPI.split() với SplitRequest và nhận kết quả.

Đoạn mã sau cho biết cách chia nhỏ tệp từ bằng API REST trong Node.js:

// Cách chia tài liệu Word thành tài liệu một trang bằng API REST trong 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 {
    // Tạo yêu cầu tách tài liệu
    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);
})

Tải xuống tệp chia nhỏ

Mẫu mã nói trên sẽ lưu các tệp được chia vào đám mây. Bây giờ, bạn có thể tải xuống các tệp bằng cách sử dụng mẫu mã sau:

// xây dựng FileApi để tải xuống tệp đã hợp nhất
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// tạo yêu cầu tệp donwload
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/split-file.docx", myStorage);
// tải xuống tệp và loại phản hồi Luồng
fileApi.downloadFile(request)
    .then(function (response) {
        // lưu tập tin trong thư mục hệ thống của bạn
        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);
    });

Tách tệp Word thành Tài liệu Word nhiều trang bằng Node.js

Bạn có thể chia các tệp từ thành nhiều tài liệu từ theo chương trình bằng cách thực hiện theo các bước dưới đây:

  • Tạo một phiên bản của DocumentApi.
  • Tạo một phiên bản của FileInfo.
  • Sau đó, đặt đường dẫn đến tệp từ đầu vào.
  • Tạo một phiên bản của SplitOptions.
  • Sau đó, gán Thông tin tệp cho Tùy chọn phân tách.
  • Đặt khoảng cách số trang từ vị trí phân tách trong một mảng được phân tách bằng dấu phẩy.
  • Ngoài ra, hãy đặt chế độ chia tài liệu thành Khoảng thời gian. Nó cho phép API phân tách các trang tài liệu dựa trên khoảng thời gian trang được cung cấp trong một mảng được phân tách bằng dấu phẩy.
  • Tạo SplitRequest với Split Options.
  • Cuối cùng, gọi phương thức DocumentAPI.split() với Split Request và nhận kết quả.

Đoạn mã sau cho biết cách chia tệp từ thành nhiều tài liệu từ bằng cách sử dụng API REST trong Node.js:

// Cách chia tệp Word thành nhiều tài liệu Word bằng Node.js
const splitspecific = async() => {

  // khởi tạo api
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // cung cấp đường dẫn tệp đầu vào
  let fileInfo = new groupdocs_merger_cloud.FileInfo();
  fileInfo.filePath = "nodejs-testing/sample-file.docx";

  // xác định tùy chọn phân chia
  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 {
    // tạo yêu cầu tách
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // chia tài liệu
    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);
})

Tách các trang theo phạm vi trang bằng API REST trong Node.js

Tiếp theo, trích xuất và lưu các trang từ tệp Word bằng cách cung cấp một loạt số trang theo chương trình bằng cách thực hiện theo các bước dưới đây:

  • Tạo một phiên bản của DocumentApi.
  • Tạo một phiên bản của FileInfo.
  • Sau đó, đặt đường dẫn đến tệp từ đầu vào.
  • Tạo một phiên bản của SplitOptions.
  • Sau đó, gán Thông tin tệp cho Tùy chọn phân tách.
  • Đặt số trang bắt đầu và số trang kết thúc.
  • Ngoài ra, hãy đặt chế độ chia tài liệu thành Trang.
  • Tạo SplitRequest với Split Options.
  • Cuối cùng, gọi phương thức DocumentAPI.split() với Split Request và nhận kết quả.

Đoạn mã sau cho biết cách phân chia tệp từ theo phạm vi số trang bằng cách sử dụng API REST trong Node.js:

// Cách tách các trang theo phạm vi trang bằng API REST trong Node.js
const splitpages = async() => {

  // khởi tạo api
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // cung cấp đường dẫn tệp đầu vào
  let fileInfo = new groupdocs_merger_cloud.FileInfo();
  fileInfo.filePath = "nodejs-testing/sample-file.docx";

  // xác định tùy chọn phân chia
  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 {
    // tạo yêu cầu tách
    let splitRequest = new groupdocs_merger_cloud.SplitRequest(options);
    // chia tài liệu
    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);
})

Thử trực tuyến

Vui lòng thử công cụ tách từ trực tuyến miễn phí sau đây, được phát triển bằng API trên.

Phần kết luận

Trong bài viết này, chúng ta đã học được:

  • cách chia tài liệu từ bằng API REST trên đám mây;
  • cách chia tệp từ thành nhiều tài liệu từ theo chương trình;
  • lập trình tải tệp từ lên đám mây và sau đó tải xuống các tệp đã tách từ đám mây;

API cũng cho phép bạn sắp xếp lại hoặc thay thế các trang tài liệu, thay đổi hướng trang, quản lý mật khẩu tài liệu và thực hiện các thao tác khác một cách dễ dàng đối với mọi định dạng tệp được hỗ trợ. Ngoài ra, bạn có thể tìm hiểu thêm về GroupDocs.Merge Cloud API bằng cách sử dụng tài liệu. Chúng tôi cũng cung cấp phần Tham khảo API cho phép bạn hình dung và tương tác trực tiếp với các API của chúng tôi thông qua trình duyệt.

Hơn nữa, chúng tôi khuyên bạn nên đọc Hướng dẫn bắt đầu. của chúng tôi

Groupdocs.cloud sẽ tiếp tục viết bài về các chủ đề mới. Do đó, vui lòng liên hệ để cập nhật thông tin mới nhất.

Đặt một câu hỏi

Bạn có thể đặt câu hỏi về cách chia tài liệu từ thông qua Diễn đàn hỗ trợ miễn phí của chúng tôi

câu hỏi thường gặp

Làm cách nào để tách các trang trong tài liệu Word trong Node.js?

Vui lòng làm theo Đoạn mã Node.js để tìm hiểu cách chia tài liệu từ thành nhiều tệp một cách nhanh chóng và dễ dàng. Bạn có thể truy cập tài liệu để biết chi tiết đầy đủ về API.

Xem thêm

Để biết thêm thông tin về những gì chúng tôi khuyên bạn nên truy cập các bài viết sau: