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

Converter Office Word e PowerPoint para PDF via biblioteca Node.js gratuita

API Open Source Node.js de conversão PDF para leitura e conversão de arquivos Office Word e PowerPoint para PDF com suporte a conversão em lote de documentos.

O que é Files2PDF?

No mundo da gestão de documentos, converter arquivos para PDF é uma necessidade diária. Seja arquivando apresentações antigas ou finalizando contratos, a necessidade de um formato estável e não editável é universal. No entanto, fazer isso manualmente para centenas de arquivos é um pesadelo. Apresentamos o Files2Pdf — um pacote Node.js leve e poderoso projetado para automatizar esse processo. Existem várias funcionalidades importantes na biblioteca, como processamento em lote de documentos, suporte a múltiplos formatos de documentos, modos de uso duplo, tratamento inteligente de erros, automação de diretórios, entre outros.

Files2Pdf é um pacote Node.js leve que simplifica a conversão de documentos de escritório — especificamente arquivos Microsoft Word e PowerPoint — para o formato PDF. Ao contrário de soluções empresariais complexas que exigem configurações pesadas, o Files2Pdf concentra-se em fazer uma coisa excepcionalmente bem: processar pastas inteiras de documentos e gerar PDFs limpos e prontos para compartilhamento. A biblioteca identifica automaticamente os arquivos suportados no seu diretório e ignora os incompatíveis, evitando travamentos ou erros durante trabalhos em lote.

Previous Next

Começando com Files2Pdf

A melhor maneira de instalar o módulo Files2PDF é via npm; por favor, use o comando a seguir para instalar a API.

Instalar a Biblioteca Files2PDF via npm

npm install files2pdf

Instalar a Biblioteca Files2PDF via GitHub

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

Capacidade de Processamento em Lote

A biblioteca de código aberto Files2PDF inclui vários recursos para converter múltiplos arquivos em documentos PDF simultaneamente. Um dos recursos de destaque é a capacidade de processar pastas inteiras de documentos em uma única operação. Em vez de converter arquivos um a um, você pode apontar o Files2PDF para um diretório contendo vários documentos, e ele converterá sistematicamente cada arquivo suportado para o formato PDF.

Como Converter Vários Documentos em Arquivos PDF dentro de Aplicações 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);
    }
  });

Suporte a Múltiplos Formatos

Files2PDF lida com formatos legados e modernos do Microsoft Office de forma perfeita. O pacote suporta arquivos PowerPoint nos formatos .ppt e .pptx, bem como documentos Word nos formatos .doc e .docx. Esse suporte abrangente a formatos garante compatibilidade com documentos criados em diferentes versões do Microsoft Office. O exemplo de código a seguir mostra como um sistema de monitoramento de arquivos pode ser aplicado para criar um sistema automatizado de conversão de documentos que monitora um diretório em busca de novos arquivos e os converte automaticamente.

Como Criar um Sistema de Monitoramento de Arquivos para Converter Novos Arquivos Carregados em um Diretório no 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();

Tamanho e Orientação de Página Personalizáveis

Uma abordagem única não funciona para PDFs. Uma captura de tela pode ser melhor em paisagem, enquanto um documento de texto fica melhor em retrato. O Files2PDF permite definir o tamanho da página (por exemplo, A4, Letter) e a orientação (Retrato ou Paisagem) para todo o PDF de saída, garantindo que seu conteúdo seja exibido corretamente.

Filtragem Inteligente de Arquivos

A biblioteca de código aberto Files2PDF facilita para desenvolvedores de software identificar e processar automaticamente apenas os tipos de arquivo suportados, ignorando elegantemente os formatos não suportados sem gerar erros. Esse mecanismo de filtragem inteligente garante operação suave mesmo ao trabalhar com pastas contendo tipos de arquivo mistos.

 Português