Chuyển đổi tài liệu Word sang PDF bằng Node.js

PDF là định dạng ưa thích để chia sẻ các tài liệu quan trọng và thông thường chia sẻ tài liệu Word ở định dạng PDF. Mặc dù Microsoft Office cung cấp chức năng tích hợp sẵn để chuyển đổi Word sang PDF, nhưng bạn có thể cần chuyển đổi tài liệu Word (DOC hoặc DOCX) thành PDF theo chương trình. Là nhà phát triển Node.js, bạn có thể dễ dàng chuyển đổi tài liệu Word thành tệp PDF trong ứng dụng Node.js của mình trên đám mây. Trong bài viết này, bạn sẽ tìm hiểu cách chuyển đổi tài liệu Word sang PDF bằng API REST trong Node.js.

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

API REST chuyển đổi DOCX sang PDF và SDK Node.js

Để chuyển đổi DOCX thành PDF, tôi sẽ sử dụng Node.js SDK của GroupDocs.Conversion Cloud API. Nó là một giải pháp chuyển đổi tài liệu và hình ảnh độc lập với nền tảng mà không phụ thuộc vào bất kỳ công cụ hay phần mềm nào. Nó cho phép bạn chuyển đổi hình ảnh và tài liệu của bất kỳ [ định dạng tệp được hỗ trợ nào 4 một cách nhanh chóng và đáng tin cậy sang bất kỳ định dạng nào bạn cần. Bạn có thể dễ dàng chuyển đổi giữa hơn 50 loại tài liệu và hình ảnh như Word, PowerPoint, Excel, PDF, HTML, CAD, hình ảnh raster, v.v.

Bạn có thể cài đặt GroupDocs.Conversion Cloud cho dự án Node.js của mình bằng lệnh sau trong bảng điều khiển:

npm install groupdocs-conversion-cloud

Vui lòng lấy ID khách hàng và Bí mật khách hàng của bạn từ bảng điều khiển trước khi bạn bắt đầu làm theo các bước và ví dụ về mã có sẵn. Khi bạn có ID và bí mật của mình, vui lòng thêm mã như hình bên dưới:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Chuyển đổi tài liệu Word sang PDF bằng API REST trong Node.js

Bạn có thể chuyển đổi tài liệu Word của mình sang PDF 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 dưới đây:

  1. Tải lên tệp DOCX lên đám mây
  2. Chuyển đổi DOCX sang PDF bằng Node.js
  3. Tải xuống tệp PDF đã chuyển đổi

Tải lên tệp DOCX

Đầu tiên, tải tệp DOCX lên đám mây bằng mẫu mã sau:

// Mở tệp trong IOStream từ cục bộ/đĩa.
var resourcesFolder = 'C:\\Files\\sample.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.docx", fileStream, myStorage);
  // cập nhật dử liệu
  fileApi.uploadFile(request);
});

Do đó, tệp DOCX đã tải lên sẽ có sẵn trong phần tệp trên trang tổng quan của bạn trên đám mây.

Chuyển đổi DOCX sang PDF bằng Node.js

Bạn có thể dễ dàng chuyển đổi tài liệu DOCX sang PDF theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Cung cấp đường dẫn tệp DOCX đầu vào
  • Gán “pdf” cho định dạng
  • Cung cấp đường dẫn tệp đầu ra
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convertDocument() với ConvertDocumentRequest

Ví dụ mã sau đây cho biết cách chuyển đổi DOCX sang PDF bằng API REST trong Node.js.

// khởi tạo api
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// xác định cài đặt chuyển đổi
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.docx";
settings.format = "pdf";
settings.outputPath = "sample.pdf";

// tạo yêu cầu tài liệu chuyển đổi
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// chuyển đổi tài liệu
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
Chuyển đổi tài liệu Word sang PDF bằng API REST trong Node.js

Chuyển đổi tài liệu Word sang PDF bằng API REST trong Node.js

Tải xuống tệp đã chuyển đổi

Mẫu mã trên sẽ lưu tệp PDF đã chuyển đổi trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

// xây dựng FileApi
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);

// tạo yêu cầu tệp donwload
let request = new groupdocs_conversion_cloud.DownloadFileRequest("sample.pdf", myStorage);

// Tải tập tin
let response = await fileApi.downloadFile(request);

// lưu trong thư mục làm việc của bạn
fs.writeFile("C:\\Files\\sample.pdf", response, "binary", function (err) { });

Chuyển đổi Word sang PDF với các tùy chọn nâng cao

Bạn có thể chuyển đổi tài liệu Word thành tệp PDF bằng một số cài đặt nâng cao 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 ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Cung cấp đường dẫn tệp DOCX
  • Gán định dạng “pdf”
  • Cung cấp đường dẫn tệp đầu ra
  • Tạo một phiên bản của DocxLoadOptions
  • Tùy chọn đặt các tùy chọn tải khác nhau, chẳng hạn như hideComments, hideWordTrackedChanges, v.v.
  • Tạo một phiên bản của PdfConvertOptions
  • Tùy chọn đặt các tùy chọn chuyển đổi khác nhau như displayDocTitle, lề (trên, trái, phải, dưới), v.v.
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convertDocument() với ConvertDocumentRequest

Ví dụ mã sau đây cho biết cách chuyển đổi tài liệu Word thành tài liệu PDF với các tùy chọn chuyển đổi nâng cao.

// khởi tạo api
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// xác định cài đặt chuyển đổi
var settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.storageName = myStorage;
settings.filePath = "sample.docx";
settings.format = "pdf";

// xác định các tùy chọn tải DOCX
var loadOptions = new groupdocs_conversion_cloud.DocxLoadOptions();
loadOptions.password = "password";			// password
loadOptions.hideComments = true;			// hide comments
loadOptions.hideWordTrackedChanges = true;	// hide track changes

settings.loadOptions = loadOptions;

// xác định các tùy chọn chuyển đổi PDF
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.centerWindow = true;		  // set position of the document's window. Default: false.
convertOptions.displayDocTitle = true;	// display document title. Default: false
convertOptions.marginTop = 5;			      // top margin
convertOptions.marginLeft = 5;			    // left margin
convertOptions.marginRight = 5;			    // right margin
convertOptions.marginBottom = 5;			  // bottom margin

settings.convertOptions = convertOptions;
settings.outputPath = "converted_with_options.pdf";

// tạo yêu cầu tài liệu chuyển đổi
var request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// chuyển đổi tài liệu
convertApi.convertDocument(request);

Chuyển đổi Word sang PDF bằng Watermark bằng Node.js

Bạn có thể chuyển đổi tài liệu Word sang tài liệu PDF và thêm hình mờ vào tài liệu đã chuyển đổi 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 ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Cung cấp đường dẫn tệp DOCX đầu vào
  • Gán “pdf” cho định dạng
  • Cung cấp đường dẫn tệp đầu ra
  • Tạo một phiên bản của WatermarkOptions
  • Đặt Văn bản hình mờ, Màu sắc, Chiều rộng, Chiều cao, v.v.
  • Xác định PdfConvertOptions và gán WatermarkOptions
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convertDocument() với ConvertDocumentRequest

Ví dụ mã sau đây cho biết cách chuyển đổi tài liệu Word thành tài liệu PDF và thêm hình mờ vào tài liệu PDF đã chuyển đổi bằng API REST trong Node.js. Vui lòng làm theo các bước được đề cập trước đó để tải lên và tải xuống tệp.

// khởi tạo api
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// xác định cài đặt chuyển đổi
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.docx";
settings.format = "pdf";
settings.outputPath = "converted_with_watermark.pdf";

// xác định tùy chọn hình mờ
let watermark = new groupdocs_conversion_cloud.WatermarkOptions();
watermark.text = "CONFIDENTIAL";
watermark.bold = true;
watermark.fontSize = 54;
watermark.color = "Gray";
watermark.background = false;
watermark.rotationAngle = 30;
watermark.left = 120;
watermark.top = 400;

// xác định tùy chọn chuyển đổi pdf
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.watermarkOptions = watermark;

settings.convertOptions = convertOptions

// xác định yêu cầu tài liệu chuyển đổi
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// chuyển đổi tài liệu
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);
Chuyển đổi Word sang PDF bằng Watermark bằng Node.js

Chuyển đổi Word sang PDF bằng Watermark bằng Node.js

Chuyển đổi DOCX sang PDF mà không cần sử dụng Cloud Storage

Bạn có thể chuyển đổi tài liệu Word sang PDF mà không cần sử dụng bộ nhớ đám mây bằng cách chuyển nó vào phần thân yêu cầu và nhận tệp đầu ra trong phản hồi API. Vui lòng làm theo các bước được đề cập bên dưới để chuyển đổi DOCX thành PDF mà không cần sử dụng bộ nhớ đám mây.

  • Tạo một phiên bản của ConvertApi
  • Đọc tệp DOCX đầu vào từ đường dẫn cục bộ
  • Tạo ConvertDocumentDirectRequest
  • Cung cấp định dạng đích là “pdf” và đường dẫn tệp đầu vào làm tham số đầu vào
  • Nhận kết quả bằng cách gọi phương thức convertDocumentDirect() với ConvertDocumentDirectRequest
  • Lưu tệp đầu ra vào đường dẫn cục bộ bằng phương thức FileStream.writeFile()

Ví dụ mã sau đây cho biết cách chuyển đổi tài liệu Word thành PDF mà không cần sử dụng bộ nhớ đám mây.

// khởi tạo api
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// đọc tập tin đầu vào
let file = fs.readFileSync('C:\\Files\\sample.docx');

// tạo chuyển đổi thực tế
let request = new groupdocs_conversion_cloud.ConvertDocumentDirectRequest("pdf", file);

// chuyển đổi tài liệu
let result = await convertApi.convertDocumentDirect(request);

// ghi tập tin đầu ra
fs.writeFile("C:\\Files\\sample_direct.pdf", result, "binary", function (err) { });
console.log("Document converted: " + result.length);

Chuyển đổi phạm vi trang từ DOCX sang PDF trong Node.js

Bạn có thể dễ dàng chuyển đổi nhiều trang từ tài liệu Word sang tệp PDF theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Cung cấp đường dẫn tệp DOCX đầu vào
  • Gán “pdf” cho định dạng
  • Cung cấp đường dẫn tệp đầu ra
  • Tạo một phiên bản của PdfConvertOptions
  • Cung cấp phạm vi trang để chuyển đổi từ số trang bắt đầu và tổng số trang để chuyển đổi
  • Gán PdfConvertOptions cho ConvertSettings
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convertDocument() với ConvertDocumentRequest

Mẫu mã sau đây cho biết cách chuyển đổi một loạt trang từ DOCX sang PDF bằng cách sử dụng API REST trong Node.js. Vui lòng làm theo các bước được đề cập trước đó để tải lên và tải xuống tệp.

// khởi tạo api
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// xác định cài đặt chuyển đổi
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.docx";
settings.format = "pdf";

// xác định các tùy chọn chuyển đổi PDF
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.fromPage = 1;    // start page number
convertOptions.pagesCount = 2;  // total pages to convert

settings.convertOptions = convertOptions
settings.outputPath = "two-pages.pdf";

// tạo yêu cầu chuyển đổi
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// chuyển đổi tài liệu
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);

Chuyển đổi các trang cụ thể của DOCX sang PDF trong Node.js

Bạn có thể chuyển đổi các trang cụ thể của tài liệu Word thành tệp PDF theo chương trình bằng cách thực hiện theo các bước được đề cập bên dưới:

  • Tạo một phiên bản của ConvertApi
  • Tạo một phiên bản của ConvertSettings
  • Cung cấp đường dẫn tệp DOCX đầu vào
  • Gán “pdf” cho định dạng
  • Cung cấp đường dẫn tệp đầu ra
  • Tạo một phiên bản của PdfConvertOptions
  • Cung cấp số trang cụ thể để chuyển đổi
  • Gán PdfConvertOptions cho ConvertSettings
  • Tạo ConvertDocumentRequest với ConvertSettings
  • Chuyển đổi bằng cách gọi phương thức convertDocument() với ConvertDocumentRequest

Ví dụ mã sau đây cho biết cách chuyển đổi các trang cụ thể của tài liệu Word sang PDF bằng API REST trong Node.js. Vui lòng làm theo các bước được đề cập trước đó để tải lên và tải xuống tệp.

// khởi tạo api
let convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

// xác định cài đặt chuyển đổi
let settings = new groupdocs_conversion_cloud.ConvertSettings();
settings.filePath = "sample.docx";
settings.format = "pdf";

// xác định tùy chọn chuyển đổi
let convertOptions = new groupdocs_conversion_cloud.PdfConvertOptions();
convertOptions.pages = [1,2]; // page numbers to convert

settings.convertOptions = convertOptions
settings.outputPath = "specific_pages.pdf";

// chuyển đổi yêu cầu tài liệu
let request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);

// chuyển đổi tài liệu
let result = await convertApi.convertDocument(request);
console.log("Document converted successfully: " + result[0].url);

Thử trực tuyến

Vui lòng dùng thử công cụ chuyển đổi DOCX sang PDF trực tuyến miễn phí sau đây, được phát triển bằng API trên. https://products.groupdocs.app/conversion/docx-to-pdf

Phần kết luận

Trong bài viết này, bạn đã học cách chuyển đổi tài liệu Word sang tệp PDF trên đám mây. Bạn cũng đã học cách chuyển đổi các trang cụ thể của tài liệu Word thành PDF bằng Node.js. Ngoài ra, bạn đã học cách chuyển đổi nhiều trang từ DOCX sang PDF theo chương trình. Hơn nữa, bạn đã học cách thêm hình mờ vào tài liệu PDF đã chuyển đổi. Bài viết này cũng giải thích cách lập trình tải tệp DOCX lên đám mây rồi tải xuống tệp PDF đã chuyển đổi từ đám mây. Bạn có thể tìm hiểu thêm về GroupDocs.Conversion 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. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm