1. Produkter
  2.   PDF
  3.   Node.js
  4.   Files2PDF
 
  

Konverter Office Word- og PowerPoint til PDF via gratis Node.js-bibliotek

Open source Node.js PDF-konverterings-API til læsning og konvertering af Office Word- og PowerPoint-filer til PDF med understøttelse af batch-dokumentkonvertering.

Hvad er Files2PDF?

I dokumenthåndteringens verden er konvertering af filer til PDF en daglig nødvendighed. Uanset om du arkiverer gamle præsentationer eller færdiggør kontrakter, er behovet for et stabilt, ikke‑redigerbart format universelt. At gøre dette manuelt for hundredvis af filer er imidlertid et mareridt. Mød Files2Pdf—en letvægts, kraftfuld Node.js‑pakke designet til at automatisere netop denne proces. Biblioteket indeholder flere vigtige funktioner, såsom bulk-/batch‑dokumentbehandling, arbejde med flere dokumentformater, to brugstilstande, intelligent fejlhåndtering, mappeautomatisering og så videre.

Files2Pdf er en letvægts Node.js-pakke, der forenkler konverteringen af kontordokumenter—specifikt Microsoft Word- og PowerPoint-filer—til PDF-format. I modsætning til komplekse enterprise-løsninger, der kræver tunge konfigurationer, fokuserer Files2Pdf på at gøre én ting exceptionelt godt: at behandle hele mapper med dokumenter og levere rene, klar-til-delings PDF‑filer. Biblioteket identificerer automatisk understøttede filer i din mappe og springer inkompatible filer over, så det forhindrer nedbrud eller fejl under batch‑jobs.

Previous Next

Kom i gang med Files2Pdf

Den bedste måde at installere Files2PDF-modulet på er via npm; brug venligst følgende kommando for at installere API'en.

Installer Files2PDF-biblioteket via npm

npm install files2pdf

Installer Files2PDF-biblioteket via GibHub

git clone "https://github.com/An4s0/Files2Pdf.git" 

Batchbehandlingsfunktion

Det open source Files2PDF-bibliotek indeholder forskellige funktioner til at konvertere flere filer til PDF-dokumenter på én gang. En af de mest markante funktioner er dets evne til at behandle hele mapper med dokumenter i en enkelt operation. I stedet for at konvertere filer én efter én, kan du pege Files2PDF på en mappe, der indeholder flere dokumenter, og den vil systematisk konvertere hver understøttet fil til PDF-format.

Hvordan konverterer man flere dokumenter til PDF-filer i Node.js‑apps?

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);
    }
  });

Understøttelse af flere formater

Files2PDF håndterer både ældre og moderne Microsoft Office-formater problemfrit. Pakken understøtter PowerPoint-filer i både .ppt- og .pptx-formater samt Word-dokumenter i .doc- og .docx-formater. Denne omfattende formatunderstøttelse sikrer kompatibilitet med dokumenter, der er oprettet i forskellige versioner af Microsoft Office. Følgende kodeeksempel viser, hvordan et filovervågningssystem kan anvendes til at oprette et automatiseret dokumentkonverteringssystem, der overvåger en mappe for nye filer og konverterer dem automatisk.

Hvordan opretter man et filovervågningssystem til at konvertere nye filer, der er indlæst i en mappe, i 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();

Tilpasningsbar sidestørrelse og orientering

En én-størrelse-passer-alle tilgang fungerer ikke for PDF'er. Et screenshot kan være bedst i liggende format, mens et tekstdokument er bedre i stående format. Files2PDF giver dig mulighed for at definere sidestørrelsen (fx A4, Letter) og orienteringen (Stående eller Liggende) for hele den færdige PDF, så dit indhold vises korrekt.

Intelligent filfiltrering

Det open source Files2PDF-bibliotek gør det nemt for softwareudviklere automatisk at identificere og behandle kun understøttede filtyper, mens det elegant springer over ikke-understøttede formater uden at kaste fejl. Denne intelligente filtreringsmekanisme sikrer en problemfri drift, selv når du arbejder med mapper, der indeholder blandede filtyper.

 Dansk