Ir para o conteúdo do rodapé
FERRAMENTAS DE PDF

Melhores opções de visualizador de PDF em 2022

Converter documentos PDF para formatos de imagem como PNG, JPG e GIF pode ser um recurso valioso em diversas aplicações, desde sistemas de gerenciamento de documentos até softwares de processamento de imagens. Neste artigo, aprenderemos como converter PDFs em arquivos de imagem usando Node.js Nós utilizaremos o poder de um pacote popular do npm (Node Package Manager) chamado pdf-poppler para realizar esta tarefa.

Pré-requisitos

Primeiro, certifique-se de que você tem Node.js e npm (Node Package Manager) instalados na sua máquina. Você pode verificar as instalações do Node executando os seguintes comandos no seu prompt de comando (cmd):

node --version
npm --version
node --version
npm --version
SHELL

Caso não esteja instalado, você precisará baixá- lo do site do Node.js

Como Converter PDF para Imagem no Node.js: Figura 1 - Módulo Node.js

Configurando o projeto

Para começar, crie um novo diretório para o seu projeto. Para este tutorial, vamos nomear este diretório como Node.js_PDFtoImage. Em seguida, navegue até ele no prompt de comando e inicialize um novo projeto Node.js executando:

npm init -y
npm init -y
SHELL

Executar o comando acima produzirá um arquivo package.json que nos permitirá instalar as dependências necessárias do nosso projeto.

Instalando dependências

A dependência que usaremos é pdf-poppler, um pacote que fornece uma API fácil de usar para converter PDFs em imagens.

Instale-o executando o seguinte comando no Windows PowerShell ou no Prompt de Comando:

npm install pdf-poppler
npm install pdf-poppler
SHELL

Tudo pronto! Vamos escrever a lógica para converter PDF em imagens.

Converter PDF em arquivo de imagem

Após a conclusão da instalação, crie um novo arquivo no diretório raiz do nosso projeto e nomeie-o como pdfToImage.js . Abra o arquivo no seu editor de texto preferido e adicione os módulos necessários:

const pdfPoppler = require('pdf-poppler');

Abaixo, encontra-se um exemplo de arquivo PDF com 28 páginas.

Como Converter PDF para Imagem no Node.js: Figura 2 - Arquivo de Entrada

Em seguida, defina uma função chamada convertPdfToImage que receba o caminho para o arquivo PDF (pdfPath) e o caminho do diretório de saída (outputPath). Esta função converterá nosso documento PDF de exemplo em imagens.

async function convertPdfToImage(pdfPath, outputPath) {
  const options = {
    format: 'jpeg',  // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null  // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, options);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

A função usa o pacote pdf-poppler para converter o PDF no formato de imagem JPEG. Nós definimos a opção format para 'jpeg' neste caso, mas você pode escolher outros formatos, como 'png' ou 'tiff'. A opção out_dir especifica o diretório onde as imagens de saída serão salvas, e out_prefix define um prefixo para os arquivos de imagem de saída. A opção page permite que você especifique uma página específica para converter, ou você pode deixá-la como nula para converter todas as páginas.

Para converter um arquivo PDF em imagens, você pode chamar a função convertPdfToImage com os caminhos de arquivo apropriados. Por exemplo:

const pdfPath = '/path/to/input.pdf';
const outputPath = '/path/to/output/folder';

convertPdfToImage(pdfPath, outputPath);

Nota: Substitua o valor pdfPath "/path/to/input.pdf" pelo caminho real para o arquivo PDF de entrada e "/path/to/output/folder" pelo caminho do diretório de saída desejado.

O código completo é o seguinte:

const pdfPoppler = require('pdf-poppler');

const pdfPath = 'C:\\Users\\hp\\Desktop\\Node.js_PDFtoImage\\pdf_files\\input.pdf';
const outputDir = 'C:\\Users\\hp\\Desktop\\Node.js_PDFtoImage\\pdf_images';

async function convertPdfToImage(pdfPath, outputPath) {
  const opts = {
    format: 'jpeg',      // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null           // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, opts);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

convertPdfToImage(pdfPath, outputDir);

Execute o script Node.js

Execute o script Node.js digitando o seguinte comando:

node pdfToImage.js
node pdfToImage.js
SHELL

Isso executará o script Node.js e converterá o PDF em arquivos de imagem usando pdf-poppler.

Como Converter PDF para Imagem no Node.js: Figura 3 - Script Node.js

Pasta de saída

Como Converter PDF para Imagem no Node.js: Figura 4 - Saída

Rasterize PDF File to Image in C

IronPDF for C# .NET

IronPDF é uma biblioteca .NET versátil que permite aos desenvolvedores C# trabalhar com documentos PDF de forma dinâmica. Oferece funcionalidades abrangentes para criar, manipular e converter arquivos PDF em C#.

O IronPDF oferece uma maneira prática de converter documentos PDF em arquivos de imagem usando C#. Essa funcionalidade é particularmente útil quando há necessidade de extrair imagens ou gerar miniaturas de imagens a partir de arquivos PDF programaticamente.

Para converter em imagens usando o IronPDF, você pode seguir os passos no trecho de código abaixo:

using IronPdf;
using IronSoftware.Drawing;

var pdf = PdfDocument.FromFile("input.pdf");

// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);

// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
using IronPdf;
using IronSoftware.Drawing;

var pdf = PdfDocument.FromFile("input.pdf");

// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);

// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
Imports IronPdf
Imports IronSoftware.Drawing

Private pdf = PdfDocument.FromFile("input.pdf")

' Extract all pages to a folder as image files
pdf.RasterizeToImageFiles("C:\image\folder\*.png")

' Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles("C:\image\folder\example_pdf_image_*.jpg", 100, 80)

' Extract all pages as AnyBitmap objects
Dim pdfBitmaps() As AnyBitmap = pdf.ToBitmap()
$vbLabelText   $csharpLabel

Como Converter PDF para Imagem no Node.js: Figura 5 - Saída de PDF para Imagem do Node.js

Veja como é fácil converter um PDF em arquivo de imagem usando o IronPDF. Para obter mais detalhes sobre a conversão de PDF em imagem, visite esta página de exemplos de código .

Conclusão

Neste artigo, exploramos como converter arquivos PDF em imagens no Node.js usando o pacote pdf-poppler. Seguindo os passos descritos, você pode integrar recursos de conversão de PDF para imagem em seus aplicativos Node.js , possibilitando uma ampla gama de possibilidades para lidar e manipular documentos PDF programaticamente.

Por outro lado, o IronPDF é uma poderosa biblioteca C# que facilita tarefas de manipulação e conversão de PDFs. Sua capacidade de converter PDFs em imagens oferece uma maneira conveniente de extrair imagens ou gerar representações de imagens de páginas PDF programaticamente. Ao aproveitar os recursos do IronPDF, os desenvolvedores podem integrar facilmente a funcionalidade de conversão de PDF para imagem em seus aplicativos C#.

O IronPDF é gratuito para desenvolvimento e pode ser licenciado para uso comercial. Além disso, você também pode usá-lo em modo comercial com um período de teste gratuito .

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Equipe de Suporte Iron

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim