Chuyển đổi Office Word & PowerPoint sang PDF qua Thư viện Node.js Miễn phí
API chuyển đổi PDF Node.js mã nguồn mở để đọc và chuyển đổi các tệp Office Word và PowerPoint sang PDF với hỗ trợ chuyển đổi hàng loạt tài liệu.
Files2PDF là gì?
Trong thế giới quản lý tài liệu, việc chuyển đổi tệp sang PDF là nhu cầu hàng ngày. Cho dù bạn đang lưu trữ các bản thuyết trình cũ hay hoàn thiện hợp đồng, nhu cầu về một định dạng ổn định, không thể chỉnh sửa là phổ biến trên toàn cầu. Tuy nhiên, thực hiện việc này một cách thủ công cho hàng trăm tệp là một cơn ác mộng. Đó là Files2Pdf — một gói Node.js nhẹ, mạnh mẽ được thiết kế để tự động hoá quá trình này. Thư viện có một số tính năng quan trọng, như xử lý tài liệu hàng loạt/batch, làm việc với nhiều định dạng tài liệu, hai chế độ sử dụng, xử lý lỗi thông minh, tự động hoá thư mục, và nhiều hơn nữa.
Files2Pdf là một gói Node.js nhẹ nhàng giúp đơn giản hoá việc chuyển đổi tài liệu văn phòng—cụ thể là các tệp Microsoft Word và PowerPoint—sang định dạng PDF. Không giống như các giải pháp doanh nghiệp phức tạp đòi hỏi cấu hình nặng nề, Files2Pdf tập trung vào việc thực hiện một nhiệm vụ một cách xuất sắc: xử lý toàn bộ thư mục tài liệu và xuất ra các tệp PDF sạch sẽ, sẵn sàng chia sẻ. Thư viện tự động nhận diện các tệp được hỗ trợ trong thư mục của bạn và bỏ qua những tệp không tương thích, ngăn ngừa sự cố hoặc lỗi trong các công việc batch.
Bắt đầu với Files2Pdf
Cách tốt nhất để cài đặt mô-đun Files2PDF là thông qua npm, vui lòng sử dụng lệnh sau để cài đặt API.
Cài đặt Thư viện Files2PDF qua npm
npm install files2pdfCài đặt Thư viện Files2PDF qua GibHub
git clone "https://github.com/An4s0/Files2Pdf.git" Khả năng xử lý hàng loạt
Thư viện mã nguồn mở Files2PDF đã bao gồm nhiều tính năng để chuyển đổi đồng thời nhiều tệp sang tài liệu PDF. Một trong những tính năng nổi bật là khả năng xử lý toàn bộ thư mục tài liệu trong một thao tác duy nhất. Thay vì chuyển đổi từng tệp một, bạn có thể chỉ định Files2PDF tới một thư mục chứa nhiều tài liệu, và nó sẽ tự động chuyển đổi mỗi tệp được hỗ trợ sang định dạng PDF.
Cách Chuyển Đổi Nhiều Tài Liệu Sang Tệp PDF Trong Ứng Dụng Node.js?
const { processFolder } = require('files2pdf');
const path = require('path');
const fs = require('fs').promises;
async function convertDocuments(inputPath, outputPath) {
try {
// Verify input folder exists
await fs.access(inputPath);
console.log(`Starting conversion process...`);
console.log(`Input folder: ${inputPath}`);
console.log(`Output folder: ${outputPath}`);
// Process all files in the folder
await processFolder(inputPath, outputPath);
console.log('Conversion completed successfully!');
return { success: true, message: 'All documents converted' };
} catch (error) {
console.error('Conversion failed:', error.message);
return { success: false, error: error.message };
}
}
// Usage example
const inputDir = path.resolve(__dirname, 'documents');
const outputDir = path.resolve(__dirname, 'pdfs');
convertDocuments(inputDir, outputDir)
.then(result => {
if (result.success) {
console.log('Success:', result.message);
} else {
console.log('Failed:', result.error);
}
});
Hỗ trợ đa định dạng
Files2PDF xử lý cả các định dạng Microsoft Office cổ điển và hiện đại một cách liền mạch. Gói này hỗ trợ các tệp PowerPoint ở cả định dạng .ppt và .pptx, cùng với các tài liệu Word ở định dạng .doc và .docx. Sự hỗ trợ định dạng toàn diện này đảm bảo khả năng tương thích với các tài liệu được tạo trên các phiên bản khác nhau của Microsoft Office. Ví dụ mã sau cho thấy cách một hệ thống giám sát tệp có thể được áp dụng để tạo ra một hệ thống chuyển đổi tài liệu tự động, giám sát một thư mục để phát hiện các tệp mới và tự động chuyển đổi chúng.
Cách Tạo Hệ Thống Giám Sát Tệp Để Chuyển Đổi Các Tệp Mới Được Tải Vào Thư Mục Trong Node.js?
const { processFolder } = require('files2pdf');
const chokidar = require('chokidar');
const path = require('path');
const fs = require('fs').promises;
class DocumentConverter {
constructor(watchDir, outputDir) {
this.watchDir = path.resolve(watchDir);
this.outputDir = path.resolve(outputDir);
this.processing = new Set();
}
async initialize() {
// Ensure output directory exists
await fs.mkdir(this.outputDir, { recursive: true });
// Set up file watcher
const watcher = chokidar.watch(this.watchDir, {
ignored: /(^|[\/\\])\../, // ignore dotfiles
persistent: true,
ignoreInitial: false
});
watcher.on('add', async (filePath) => {
await this.handleNewFile(filePath);
});
console.log(`Watching ${this.watchDir} for new documents...`);
}
async handleNewFile(filePath) {
const ext = path.extname(filePath).toLowerCase();
const supportedFormats = ['.ppt', '.pptx', '.doc', '.docx'];
if (!supportedFormats.includes(ext)) {
return; // Skip unsupported files
}
if (this.processing.has(filePath)) {
return; // Already processing this file
}
this.processing.add(filePath);
console.log(`New file detected: ${path.basename(filePath)}`);
try {
await processFolder(path.dirname(filePath), this.outputDir);
console.log(`Successfully converted: ${path.basename(filePath)}`);
} catch (error) {
console.error(`Error converting ${path.basename(filePath)}:`, error.message);
} finally {
this.processing.delete(filePath);
}
}
}
// Initialize the converter
const converter = new DocumentConverter('./watched-folder', './converted-pdfs');
converter.initialize();
Kích thước và hướng trang có thể tùy chỉnh
Một cách tiếp cận một kích thước cho tất cả không phù hợp với PDF. Ảnh chụp màn hình có thể tốt nhất ở chế độ ngang, trong khi tài liệu văn bản thì tốt hơn ở chế độ dọc. Files2PDF cho phép bạn xác định kích thước trang (ví dụ: A4, Letter) và hướng (Dọc hoặc Ngang) cho toàn bộ PDF đầu ra, đảm bảo nội dung của bạn được hiển thị đúng cách.
Lọc tệp thông minh
Thư viện mã nguồn mở Files2PDF giúp các nhà phát triển phần mềm dễ dàng tự động nhận dạng và xử lý chỉ các loại tệp được hỗ trợ, một cách nhẹ nhàng bỏ qua các định dạng không hỗ trợ mà không gây lỗi. Cơ chế lọc thông minh này đảm bảo hoạt động trơn tru ngay cả khi làm việc với các thư mục chứa các loại tệp hỗn hợp.