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

Konvertuokite Office Word ir PowerPoint į PDF naudodami nemokamą Node.js biblioteką

Atviro kodo Node.js PDF konvertavimo API, skirtas skaityti ir konvertuoti Office Word ir PowerPoint failus į PDF su paketiniu dokumentų konvertavimo palaikymu.

Kas yra Files2PDF?

Dokumentų valdymo pasaulyje failų konvertavimas į PDF yra kasdienė būtinybė. Nesvarbu, ar archyvuojate senas prezentacijas, ar baigiate sutartis, poreikis turėti stabilų, nekeičią formatą yra universali. Tačiau tai atlikti rankiniu būdu šimtų failų yra košmaras. Čia įsijungia Files2Pdf – lengvas, galingas Node.js paketas, sukurtas automatizuoti šį procesą. Bibliotekoje yra keli svarbūs funkcionalumai, tokie kaip masinis/daugelio dokumentų apdorojimas, darbas su įvairių formatų dokumentais, dviejų naudojimo režimų galimybė, protingas klaidų tvarkymas, katalogų automatizavimas ir t.t.

Files2Pdf yra lengvas Node.js paketas, supaprastinantis biuro dokumentų – konkrečiai Microsoft Word ir PowerPoint failų – konvertavimą į PDF formatą. Skirtingai nuo sudėtingų įmoninių sprendimų, kuriems reikia didelių konfigūracijų, Files2Pdf susitelkia į vieną dalyką – puikiai atlikti visų dokumentų aplankų apdorojimą ir išvesti švarius, pasiruošusius dalintis PDF failus. Biblioteka automatiškai nustato palaikomus failus jūsų kataloge ir praleidžia nesuderinamus, taip išvengiant avarijų ar klaidų vykdant paketinius darbus.

Previous Next

Pradžia su Files2Pdf

Geriausias būdas įdiegti Files2PDF modulį – per npm, prašome naudoti šią komandą API įdiegimui.

Įdiekite Files2PDF biblioteką per npm

npm install files2pdf

Įdiekite Files2PDF biblioteką per GibHub

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

Masinio apdorojimo galimybė

Atviro kodo Files2PDF biblioteka įtraukė įvairias funkcijas, leidžiančias vienu metu konvertuoti kelis failus į PDF dokumentus. Viena iš išskirtinių savybių yra galimybė vienoje operacijoje apdoroti visus dokumentų aplankus. Vietoj to, kad konvertuotumėte failus po vieną, galite nurodyti Files2PDF katalogą, kuriame yra keli dokumentai, ir jis sistemingai konvertuos kiekvieną palaikomą failą į PDF formatą.

Kaip konvertuoti kelis dokumentus į PDF failus Node.js programose?

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

Daugelio formatų palaikymas

Files2PDF tvarko tiek senus, tiek modernius Microsoft Office formatus be jokių problemų. Paketas palaiko PowerPoint failus tiek .ppt, tiek .pptx formatu, taip pat Word dokumentus .doc ir .docx formatu. Ši išsami formatų palaikymas užtikrina suderinamumą su dokumentais, sukurtų skirtingų Microsoft Office versijų. Žemiau pateiktas kodo pavyzdys rodo, kaip failų stebėjimo sistema gali būti naudojama automatizuotai dokumentų konvertavimo sistemai sukurti, kuri stebi katalogą dėl naujų failų ir juos automatiškai konvertuoja.

Kaip Node.js sukurti failų stebėjimo sistemą, konvertuojančią į katalogą įkeltus naujus failus?

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

Pritaikomas puslapio dydis ir orientacija

Vienas dydis visiems požiūris neveikia PDF dokumentams. Ekrano nuotrauka gali būti geriausia horizontaliai, o teksto dokumentas – vertikaliai. Files2PDF leidžia nustatyti puslapio dydį (pvz., A4, Letter) ir orientaciją (Portretas arba Kraštovaizdis) visam išvesties PDF, užtikrinant, kad turinys būtų rodomas teisingai.

Išmanus failų filtravimas

Atviro kodo Files2PDF biblioteka leidžia programų kūrėjams lengvai automatiškai identifikuoti ir apdoroti tik palaikomus failų tipus, sklandžiai praleidžiant nepalaikomus formatus be klaidų. Šis protingas filtravimo mechanizmas užtikrina sklandų veikimą net dirbant su aplankais, kuriuose yra mišrių failų tipų.

 Lietuvių