Office Word és PowerPoint konvertálása PDF-be ingyenes Node.js könyvtárral.
Nyílt forráskódú Node.js PDF konverter API az Office Word és PowerPoint fájlok olvasásához és PDF-be konvertálásához, kötegelt dokumentumkonvertálás támogatásával.
Mi az a Files2PDF?
A dokumentumkezelés világában a fájlok PDF-re konvertálása napi szükséglet. Akár régi prezentációkat archivál, akár szerződéseket finalizál, a stabil, nem szerkeszthető formátum iránti igény általános. Azonban ezt kézzel, több száz fájl esetén elvégezni rémálom. Itt jön képbe a Files2Pdf – egy könnyű, erőteljes Node.js csomag, amelynek célja ennek a folyamatnak az automatizálása. A könyvtár több fontos funkcióval is rendelkezik, mint például a kötegelt/darabos dokumentumfeldolgozás, többféle dokumentumformátummal való munka, kettős használati mód, intelligens hibakezelés, könyvtári automatizálás, és így tovább.
Files2Pdf egy könnyű Node.js csomag, amely egyszerűsíti az irodai dokumentumok – különösen a Microsoft Word és PowerPoint fájlok – PDF formátumba történő konvertálását. A bonyolult vállalati megoldásoktól, amelyek nehéz konfigurációkat igényelnek, eltérően, a Files2Pdf arra koncentrál, hogy egy dologban kiemelkedően jó legyen: teljes mappák dokumentumainak feldolgozása és tiszta, azonnal megosztható PDF-ek előállítása. A könyvtár automatikusan azonosítja a támogatott fájlokat a könyvtáradban, és átugorja az inkompatibiliseket, megakadályozva a hibákat vagy összeomlásokat kötegelt feladatok során.
A Files2PDF használatának megkezdése
A Files2PDF modul telepítésének legjobb módja az npm használata, kérlek, használd a következő parancsot az API telepítéséhez.
Files2PDF könyvtár telepítése npm segítségével
npm install files2pdfFiles2PDF könyvtár telepítése GitHub segítségével
git clone "https://github.com/An4s0/Files2Pdf.git" Kötegelt feldolgozási lehetőség
Az open source Files2PDF könyvtár számos funkciót tartalmaz, amelyek lehetővé teszik több fájl egyidejű PDF dokumentummá konvertálását. Az egyik kiemelkedő funkciója, hogy képes egyetlen műveletben teljes mappák dokumentumait feldolgozni. Ahelyett, hogy egyesével konvertálnád a fájlokat, a Files2PDF-et egy több dokumentumot tartalmazó könyvtárra irányíthatod, és az rendszeresen átalakítja minden támogatott fájlt PDF formátumba.
Hogyan konvertálhatunk több dokumentumot PDF fájlokká Node.js alkalmazásokban?
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);
}
});
Több formátum támogatása
A Files2PDF zökkenőmentesen kezeli a régi és a modern Microsoft Office formátumokat egyaránt. A csomag támogatja a PowerPoint fájlokat mind .ppt, mind .pptx formátumban, valamint a Word dokumentumokat .doc és .docx formátumban. Ez az átfogó formátumtámogatás biztosítja a kompatibilitást a különböző Microsoft Office verziókban készült dokumentumokkal. Az alábbi kódrészlet bemutatja, hogyan alkalmazható egy fájlfigyelő rendszer egy automatizált dokumentumkonverziós rendszer létrehozására, amely egy könyvtárat figyel az új fájlokért, és azokat automatikusan konvertálja.
Hogyan hozzunk létre egy fájlfigyelő rendszert az új, egy könyvtárba betöltött fájlok konvertálásához Node.js-ben?
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();
Testreszabható oldalméret és tájolás
Az egyetlen, mindenki számára megfelelő megközelítés nem működik a PDF-eknél. Egy képernyőfelvétel leginkább fekvő tájolásban lehet megfelelő, míg egy szöveges dokumentum álló tájolásban jobb. A Files2PDF lehetővé teszi, hogy meghatározd az oldal méretét (pl. A4, Letter) és tájolását (Álló vagy Fekvő) a teljes kimeneti PDF-hez, biztosítva, hogy a tartalom helyesen jelenjen meg.
Intelligens fájlszűrés
A nyílt forráskódú Files2PDF könyvtár megkönnyíti a szoftverfejlesztők számára, hogy automatikusan azonosítsák és csak a támogatott fájltípusokat dolgozzák fel, elegánsan átugorva a nem támogatott formátumokat hibák dobása nélkül. Ez az intelligens szűrési mechanizmus biztosítja a zökkenőmentes működést még akkor is, ha vegyes fájltípusokat tartalmazó mappákkal dolgozol.