IRONSOFTWAREHOME
AJUDA DO .NET

Módulo em C# (Como funciona para desenvolvedores)

Curtis Chau
Curtis Chau
Updated: 16 de outubro de 2025

Os arquivos PDF são um formato amplamente utilizado para troca de documentos devido à sua capacidade de preservar a formatação em diferentes plataformas. Em diversas aplicações, a leitura programática do conteúdo de arquivos PDF torna-se indispensável.

Neste artigo, vamos aprender a visualizar texto de arquivos PDF em C++ usando a ferramenta de linha de comando Xpdf. Xpdf fornece um conjunto de utilitários de linha de comando e bibliotecas C++ para trabalhar com arquivos PDF, incluindo extração de texto. Integrando Xpdf em nosso programa de visualização de PDF em C++, podemos visualizar eficientemente o conteúdo de texto dos arquivos PDF e processá-lo programaticamente.

Xpdf - Biblioteca C++ e Ferramentas de Linha de Comando

O Xpdf é um pacote de software de código aberto que oferece uma variedade de ferramentas e bibliotecas para trabalhar com arquivos PDF. Inclui diversos utilitários de linha de comando e bibliotecas C++ que permitem funcionalidades relacionadas a PDFs, como análise sintática, renderização, impressão e extração de texto. As ferramentas de linha de comando do Xpdf também oferecem maneiras de visualizar arquivos PDF diretamente do terminal.

Um dos principais componentes do Xpdf é o pdftotext, conhecido principalmente por extrair conteúdo de texto de arquivos PDF. No entanto, quando usado em combinação com outras ferramentas como pdftops e pdfimages, Xpdf permite que os usuários visualizem o conteúdo do PDF de maneiras diferentes. A ferramenta pdftotext prova ser valiosa para extrair informações textuais de PDFs para processamento ou análise posterior, e oferece opções para especificar de quais páginas extrair texto.

Pré-requisitos

Antes de começarmos, certifique-se de que você possui os seguintes pré-requisitos:

  1. Um compilador C++, como o GCC ou o Clang, instalado em seu sistema. Para isso, utilizaremos o ambiente de desenvolvimento integrado Code::Blocks .
  2. As ferramentas de linha de comando do Xpdf estão instaladas e acessíveis a partir da linha de comando. Baixe o Xpdf e instale a versão adequada ao seu ambiente. Em seguida, defina o diretório bin do Xpdf nas variáveis ​​de ambiente do sistema para acessá-lo de qualquer local no sistema de arquivos.

Criando um projeto de visualizador de PDF

  1. Abra o Code::Blocks: Inicie o ambiente de desenvolvimento integrado (IDE) Code::Blocks no seu computador.
  2. Criar um novo projeto: Clique em "Arquivo" no menu superior e selecione "Novo" no menu suspenso. Em seguida, clique em "Projeto" no submenu.
  3. Escolha o tipo de projeto: Na janela "Novo a partir de modelo", escolha "Aplicativo de console" e clique em "Ir". Em seguida, selecione a linguagem "C/C++" e clique em "Avançar".
  4. Insira os detalhes do projeto: No campo "Título do projeto", dê um nome ao seu projeto (por exemplo, "Visualizador de PDF"). Escolha o local onde deseja salvar os arquivos do projeto e clique em "Avançar".
  5. Selecione o compilador: Escolha o compilador que deseja usar para o seu projeto. Por padrão, o Code::Blocks deve detectar automaticamente os compiladores disponíveis no seu sistema. Caso contrário, selecione um compilador adequado na lista e clique em "Concluir".

Passos para visualizar texto de um PDF em C++

Inclua os cabeçalhos necessários

Primeiro, vamos adicionar os arquivos de cabeçalho necessários ao nosso arquivo main.cpp :

#include <cstdlib>
#include <iostream>
#include <fstream>
#include <cstdio>

using namespace std; // Use standard namespace for convenience
Text

Configurar caminhos de entrada e saída

string pdfPath = "input.pdf";
string outputFilePath = "output.txt";
Text

Na função main, declaramos duas strings: pdfPath e outputFilePath. pdfPath armazena o caminho para o arquivo PDF de entrada, e outputFilePath armazena o caminho onde o texto extraído será salvo como um arquivo de texto simples.

O arquivo de entrada é o seguinte:

Como Visualizar Arquivos PDF em C++: Figura 1

Execute o Comando pdftotext

// Construct the command to execute pdftotext with input and output paths
string command = "pdftotext " + pdfPath + " " + outputFilePath;

// Execute the command using system function and capture the status
int status = system(command.c_str());
Text

Aqui, construímos o comando pdftotext usando as variáveis pdfPath e outputFilePath para abrir o arquivo PDF e visualizar seu conteúdo. A função system é então chamada para executar o comando, e seu valor de retorno é armazenado na variável status.

Verificar o status da extração de texto

if (status == 0) 
{
    cout << "Text extraction successful." << endl;
} 
else 
{ 
    cout << "Text extraction failed." << endl; 
}
Text

Verificamos a variável status para ver se o comando pdftotext foi executado com sucesso. Se status for igual a 0, significa que a extração de texto foi bem-sucedida, e imprimimos uma mensagem de sucesso. Se o status for diferente de zero, isso indica um erro, e imprimimos uma mensagem de erro.

Ler o texto extraído e exibi-lo

// Open the output file to read the extracted text
ifstream outputFile(outputFilePath);
if (outputFile.is_open()) 
{ 
    string textContent;
    string line;
    while (getline(outputFile, line)) 
    {
        textContent += line + "\n"; // Concatenate each line to the text content
    }
    outputFile.close();
    cout << "Text content extracted from PDF:" << endl;
    cout << textContent << endl;
} 
else 
{
    cout << "Failed to open output file." << endl;
}
Text

No código de exemplo acima, abrimos o outputFile (o arquivo de texto gerado por pdftotext), lemos seu conteúdo linha por linha e o armazenamos na string textContent. Por fim, fechamos o arquivo e imprimimos o conteúdo do texto extraído no console.

Remover arquivo de saída

Se você não precisar do arquivo de texto editável gerado ou quiser liberar espaço em disco, basta excluí-lo ao final do programa usando o seguinte comando antes de encerrar a função principal:

// Remove the output file to free up disk space and if output is not needed
remove(outputFilePath.c_str());
Text

Compilando e executando o programa

Compile o código usando o atalho de teclado "Ctrl+F9". Após a compilação bem-sucedida, a execução do arquivo extrairá o conteúdo de texto do documento PDF especificado e o exibirá no console. O resultado é o seguinte:

Como Visualizar Arquivos PDF em C++: Figura 2

View PDF files in C#

A biblioteca IronPDF .NET C# é uma poderosa biblioteca PDF for .NET C# que permite aos usuários visualizar facilmente arquivos PDF em seus aplicativos C#. Aproveitando o mecanismo do navegador web Chromium, o IronPDF renderiza e exibe com precisão o conteúdo de PDFs, incluindo imagens, fontes e formatação complexa. Com sua interface amigável e amplas funcionalidades, os desenvolvedores podem integrar o IronPDF em seus projetos C# de forma simples, permitindo que os usuários visualizem documentos PDF de maneira eficiente e interativa. Seja para exibir relatórios, faturas ou qualquer outro conteúdo em PDF, o IronPDF oferece uma solução robusta para criar visualizadores de PDF ricos em recursos em C#.

Para instalar o pacote NuGet IronPDF no Visual Studio, siga estes passos:

  1. Abra o Visual Studio: Inicie o Visual Studio ou qualquer outra IDE de sua preferência.

  2. Crie ou abra seu projeto: Crie um novo projeto C# ou abra um existente onde você deseja instalar o pacote IronPDF .

  3. Abra o Gerenciador de Pacotes NuGet : No Visual Studio, acesse "Ferramentas" > "Gerenciador de Pacotes NuGet " > "Gerenciar Pacotes NuGet para a Solução". Como alternativa, clique em Explorador de Soluções e selecione "Gerenciar Pacotes NuGet para a Solução".

  4. Pesquise por IronPDF: Na janela "Gerenciador de Pacotes NuGet ", clique na guia "Procurar" e, em seguida, pesquise por "IronPDF" na barra de pesquisa. Alternativamente, visite o pacote NuGet IronPDF e faça o download direto da versão mais recente do "IronPDF".

  5. Selecione o pacote IronPDF : Encontre o pacote "IronPDF" e clique nele para selecioná-lo para o seu projeto.

  6. Instale o IronPDF: Clique no botão "Instalar" para instalar o pacote selecionado.

  7. No entanto, você também pode instalar o IronPDF usando o Console do Gerenciador de Pacotes NuGet com o seguinte comando:

    PM > Install-Package IronPdf

Utilizando o IronPDF, podemos realizar operações como extrair texto e imagens de documentos PDF e exibi-los no console para visualização. O código a seguir ajuda a realizar essa tarefa:

using IronPdf;
using IronSoftware.Drawing;
using System.Collections.Generic;

// Extracting Image and Text content from Pdf Documents
// Open a 128-bit encrypted PDF
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");

// Get all text to put in a search index
string text = pdf.ExtractAllText();

// Get all Images
var allImages = pdf.ExtractAllImages();

// Or even find the precise text and images for each page in the document
for (var index = 0 ; index < pdf.PageCount ; index++)
{
    int pageNumber = index + 1;
    text = pdf.ExtractTextFromPage(index);
    List<AnyBitmap> images = pdf.ExtractBitmapsFromPage(index);
    // Further processing here...
}

Para obter informações mais detalhadas sobre o IronPDF, visite a Documentação do IronPDF .

Conclusão

Neste artigo, aprendemos como extrair e visualizar o conteúdo de um documento PDF em C++ usando a ferramenta de linha de comando Xpdf. Essa abordagem nos permite processar e analisar o texto extraído em nossos aplicativos C++ de forma integrada.

Está disponível uma licença de avaliação gratuita para testes com fins comerciais.

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 bem estruturados e visualmente atraentes.

...
Leia mais

Artigos relacionados

Key in blue circle

Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.

Your trial license will be sent to your email address

Sem limitações. 100% desbloqueado. Sem cartão de crédito.

bullet_checkedNão é necessário cartão de crédito nem criação de conta.Sem limitações. 100% desbloqueado. Sem cartão de crédito.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Agende sua demonstração ao vivo gratuita.
Booking Badge

Aprovado por milhões de engenheiros em todo o mundo.

Logotipos dos clientes da Iron Software
Agende sua consulta sem compromisso.
Preencha o formulário abaixo ou envie um e-mail para sales@ironsoftware.com
Os seus dados serão sempre mantidos em sigilo.
Aprovado por milhões de engenheiros em todo o mundo.
Logotipos dos clientes da Iron Software
Obtenha sua chave de avaliação gratuita de 30 dias instantaneamente.
Não é necessário cartão de crédito nem criação de conta.