ไลบรารี Node.js สำหรับแปลงไฟล์ Office เป็น PDF หรือ HTML
ไลบรารี Node.js โอเพ่นซอร์สชั้นนำ ช่วยให้นักพัฒนาซอฟต์แวร์อ่านและแปลงไฟล์ Office เป็น PDF, HTML, JPEG, PNG และรูปแบบอื่น ๆ ผ่าน API Node.js ฟรี
Awesome-Unoconv คืออะไร?
ไลบรารี Awesome-Unoconv เป็นห่อหุ้มแบบโอเพ่นซอร์สที่ทรงพลังที่ออกแบบมาเพื่อเสริมขีดความสามารถของเครื่องมือ unoconv ยอดนิยม ซึ่งช่วยให้การแปลงรูปแบบไฟล์เป็นไปอย่างราบรื่นโดยอาศัยชุด LibreOffice สร้างขึ้นเพื่อทำให้การโต้ตอบกับ unoconv ง่ายขึ้น ไลบรารีนี้ให้ส่วนต่อประสานโปรแกรมเมติกเพื่อทำงานแปลงเอกสารโดยอัตโนมัติโดยใช้ความพยายามน้อยที่สุด มีฟีเจอร์สำคัญหลายอย่างในไลบรารี เช่น การแปลงไฟล์ Office เป็น PDF, การแปลง DOCX เป็น HTML, การแปลงเอกสารตามสั่งเป็น PDF หรือ HTML, การแปลงเอกสารเป็นบัฟเฟอร์, การแปลงเอกสารบนเว็บ และอื่น ๆ อีกมากมาย มีการสนับสนุนการแปลงแบบอะซิงโครนัสในตัว ทำให้คุณสามารถทำการแปลงหลายรายการพร้อมกันโดยไม่บล็อกแอปพลิเคชันของคุณ
ไลบรารี Awesome-Unoconv มาพร้อมกับ API ที่ใช้งานง่ายและมีเอกสารอธิบายละเอียดสำหรับการแปลงไฟล์เอกสารในแอปพลิเคชัน Node.js ช่วยให้นักพัฒนาซอฟต์แวร์สามารถรวมการแปลงรูปแบบไฟล์ที่แข็งแรงเข้าในโครงการของตนได้อย่างไม่มีอุปสรรค รองรับรูปแบบไฟล์เอกสารหลายชนิด เช่น DOC, DOCX, ODT, XLSX, PPTX, PDF, HTML, PNG, JPEG และอื่น ๆ การสนับสนุนที่หลากหลายนี้ทำให้เป็นตัวเลือกที่เหมาะสมสำหรับโครงการที่ต้องการการแปลงรูปแบบไฟล์ ไลบรารีให้ตัวเลือกการแปลงหลายแบบ เพื่อให้คุณสามารถปรับแต่งกระบวนการแปลงให้ตรงกับความต้องการเฉพาะของคุณ เช่น การระบุรูปแบบเอาต์พุต, แบบอักษรและเลย์เอาต์ ทั้งยังมีกลไกการจัดการข้อผิดพลาดที่แข็งแรง ทำให้แอปของคุณคงที่และตอบสนองได้แม้ในกรณีที่เกิดข้อผิดพลาดในการแปลง ด้วยการสนับสนุนรูปแบบที่หลากหลาย ทำให้นักพัฒนาสามารถสร้างแอปพลิเคชันหลายฟังก์ชัน เช่น ตัวแปลงไฟล์, เครื่องมือสร้างรายงานอัตโนมัติ และอื่น ๆ โดยรวมแล้วเป็นตัวเลือกที่เหมาะสำหรับโครงการที่ต้องการการแปลงไฟล์อย่างราบรื่น
เริ่มต้นใช้งาน Awesome-Unoconv
เพื่อทำการติดตั้ง Awesome-Unoconv คุณสามารถใช้ npm ซึ่งเป็นแพ็กเกจเมเนเจอร์สำหรับ JavaScript โปรดใช้คำสั่งต่อไปนี้เพื่อการติดตั้งที่สำเร็จ
ติดตั้งไลบรารี Awesome-Unoconv ผ่าน npm
$ npm install awesome-unoconv แปลงไฟล์ Office เป็น PDF ด้วย Node.js
ไลบรารี Awesome-Unoconv ให้ฟังก์ชันครบถ้วนสำหรับการแปลงไฟล์เอกสารต่าง ๆ อย่างโปรแกรมเมติก เช่น PDF, DOCX, ODT, XLSX และรูปแบบภาพยอดนิยมเช่น JPEG, PNG เป็นต้น ฟีเจอร์หลักของไลบรารีคือความง่ายในการแปลงรูปแบบไฟล์เอกสารที่หลากหลาย ตัวอย่างต่อไปนี้แสดงวิธีที่นักพัฒนาซอฟต์แวร์สามารถโหลดและแปลงไฟล์ Word DOCX เป็น PDF ภายในแอปพลิเคชัน Node.js
วิธีแปลงไฟล์ Word เป็น PDF ผ่านไลบรารี Node.js?
const path = require('path');
const unoconv = require('awesome-unoconv');
const sourceFilePath = path.resolve('./myDoc.docx');
const outputFilePath = path.resolve('./myDoc.pdf'); // or 'myDoc.html'
unoconv
.convert(inputPath, { output: outputPath, format: 'pdf' }) // or format: 'html'
.then(result => {
console.log(result); // return outputFilePath
})
.catch(err => {
console.log(err);
});
การแปลงไฟล์เอกสารแบบปรับแต่งได้ใน Node.js
ไลบรารี Awesome-Unoconv แบบโอเพ่นซอร์ส ทำให้การโหลดและแปลงไฟล์เอกสารสำนักงานต่าง ๆ ในแอปพลิเคชัน Node.js ง่ายขึ้น นักพัฒนาสามารถกำหนดตัวเลือกการแปลงขั้นสูงได้ เช่น ช่วงหน้ากระดาษ, คุณภาพภาพ, ความละเอียดเอาต์พุต เพื่อปรับผลลัพธ์ให้ตรงกับความต้องการของตน ตัวอย่างต่อไปนี้สาธิตวิธีที่นักพัฒนาสามารถส่งออกหน้าที่กำหนดจาก PDF เป็น PNG ด้วยความละเอียดแบบกำหนดเอง
วิธีแปลงหน้าที่เลือกของ PDF เป็น PNG ในแอป Node.js?
unoconv.convert('document.pdf', 'png', { startPage: 1, endPage: 5, resolution: 300 }, (error, result) => {
if (error) {
console.error('Failed to convert:', error);
} else {
console.log('High-resolution PNGs generated.');
}
});
การแปลงไฟล์เอกสารเป็นชุดใน Node.js
ด้วยไลบรารี Awesome-Unoconv นักพัฒนาสามารถทำการแปลงไฟล์หลายไฟล์เป็นชุดได้อย่างง่ายดาย ฟีเจอร์นี้มีประโยชน์เมื่อต้องจัดการกับคอลเลกชันไฟล์จำนวนมากที่ต้องแปลงเป็นรูปแบบต่าง ๆ รองรับการแปลงหลายไฟล์พร้อมกัน จึงช่วยประหยัดเวลาและความพยายาม เพียงไม่กี่บรรทัดของโค้ด นักพัฒนาซอฟต์แวร์สามารถแปลงไฟล์หลายไฟล์พร้อมกันได้ ตัวอย่างนี้แสดงการแปลงหลายไฟล์พร้อมกันในชุดหนึ่ง ลดความซับซ้อนของงานประมวลผลเอกสารระดับใหญ่
วิธีแปลงไฟล์หลายไฟล์เป็น PDF ในแอป Node.js?
const files = ['doc1.docx', 'doc2.odt', 'doc3.txt'];
files.forEach((file) => {
unoconv.convert(file, 'pdf', (error, result) => {
if (error) {
console.error(`Error converting ${file}:`, error);
} else {
const outputName = file.replace(/\.[^/.]+$/, '.pdf');
require('fs').writeFileSync(outputName, result);
console.log(`${file} converted to PDF.`);
}
});
});