
Como separar páginas de um PDF
IronPDF vs iText / iText
Comparação abrangente de bibliotecas PDF .NET — recurso por recurso com contexto baseado em evidências.
| Recurso | iText / iText | IronPDF ✦ |
|---|---|---|
| Criação e conversão de PDF | ||
| HTML/CSS para PDF | $ Paid Add-on HTML→PDF via complemento pdfHTML (pacote separado; modelo AGPL/comercial). | ✓ Yes Motor baseado no Chromium com renderização CSS3, Flexbox e Grid perfeitamente otimizada para cada pixel, já integrada. |
| Execução de JavaScript | ? Unknown O pdfHTML descreve a conversão de HTML/CSS para PDF, mas o suporte à execução de JS não é mencionado na documentação. | ✓ Yes Executa o JavaScript completamente durante a renderização — gráficos dinâmicos, SPAs e conteúdo interativo. |
| Geração Programática | ✓ Yes Posicionado como um SDK de PDF programável para .NET — crie, edite e aprimore. | ✓ Yes Gere a partir de modelos HTML, strings, visualizações ASPX ou imagens. O Chromium cuida do layout. |
| URL para PDF | $ Paid Add-on É possível através do complemento pdfHTML com busca de URLs, mas não é um recurso nativo. | ✓ YesRenderUrlAsPdf() Captura qualquer URL ativa com renderização completa de CSS/JS. |
| DOCX para PDF | ✕ No Sem conversão nativa para Word — o iText é um SDK nativo para PDF. | ✓ YesDocxToPdfRenderer Converte documentos do Word preservando a estrutura e a formatação. |
| Leitura e Extração | ||
| Extração de texto | ✓ YesPdfTextExtractor.GetTextFromPage() com múltiplas estratégias de extração. | ✓ Yes Extrai texto considerando o layout. Combina com o IronOCR para documentos digitalizados. |
| Renderizar páginas em imagens | ? Unknown Os fluxos de trabalho de OCR mencionam a renderização, mas um módulo de "renderizador de PDF para imagem" de fonte primária não é evidenciado nos documentos do iText citados. | ✓ Built-in Rasterização nativa para PNG, JPEG e BMP com DPI configurável. |
| OCR integrado | $ Paid Add-on Complemento pdfOCR disponível; as notas de instalação mencionam dependências específicas da plataforma/nativas (por exemplo, requisitos de tempo de execução do Linux/macOS). | ✓ Via IronOCR Integração nativa com o IronOCR para OCR em mais de 127 idiomas em PDFs digitalizados. |
| Edição e Manipulação | ||
| Fusão e divisão | ✓ YesPdfMerger Classe na API .NET ; os exemplos oficiais discutem a mesclagem via PdfMerger. | ✓ Yes Fusão, divisão, anexação, inserção e reordenação de páginas em uma única linha com API intuitiva. |
| Cabeçalhos, rodapés e números de página | ✓ Yes A inclusão na lista da PDF Association confirma a possibilidade de adicionar "números de página" e recursos semelhantes a PDFs existentes. | ✓ Yes Cabeçalhos/rodapés em HTML com numeração automática de páginas, datas e conteúdo personalizado. |
| Marcas d'água | ✓ Yes A lista da PDF Association inclui explicitamente "marcas d'água... em documentos PDF existentes". | ✓ YesApplyWatermark() Aceita HTML/CSS — controle total sobre opacidade, rotação e posição. |
| Texto e imagens do carimbo | ✓ Yes Posicionamento programático de conteúdo disponível através das APIs de tela e layout do iText. | ✓ YesTextStamper & ImageStamper com fontes do Google, posicionamento e controle por página. |
| Redigir conteúdo | ✓ Yes O iText oferece suporte à anotação de redação por meio do módulo de limpeza. | ✓ YesRedactTextOnAllPages() Remove permanentemente o texto sensível em uma única linha. |
| Segurança e Conformidade | ||
| Criptografia e Senhas | ✓ Yes Criptografia completa e controle de permissões através da API de segurança do iText. | ✓ Yes Criptografia AES, senhas de proprietário/usuário, permissões granulares (imprimir, copiar, anotar). |
| Assinaturas digitais | ✓ Yes Documentação dedicada à assinatura digital e API de assinatura ( PdfSigner ). | ✓ YesPdfSignature Com suporte para certificados X509/PFX. |
| Conformidade com PDF/A e PDF/UA | ✓ Yes A documentação aborda a criação de PDF/A e explica as limitações (a conversão de um arquivo existente não é automática). | ✓ Yes Conformidade nativa com os formatos de arquivo PDF/A e acessibilidade PDF/UA para uso corporativo. |
| Plataforma e Implantação | ||
| Suporte multiplataforma | ✓ Yes .NET Standard 2.0 / .NET Framework 4.6.1 — funciona no .NET 6+ em diversos sistemas operacionais. | ✓ Yes Windows, Linux, macOS, x64, x86, ARM. .NET 6–10, Core, Standard 2.0+, Framework 4.6.2+. |
| Servidor / Docker / Nuvem | ~ Complex A instalação principal requer vários pacotes (iText + adaptador Bouncy Castle); os complementos (pdfHTML/pdfOCR) adicionam etapas adicionais de dependência/conformidade. | ✓ Yes Docker, Azure, AWS, IIS. Imagens oficiais do Docker e guias de implantação. |
| Facilidade de instalação | ~ Complex A instalação do Core requer vários pacotes (adaptador Bouncy Castle); HTML/OCR requerem complementos adicionais e, às vezes, dependências nativas. | ✓ SimpleInstall-Package IronPDF com um único comando NuGet . Pronto em minutos. |
| Licenciamento e suporte | ||
| Modelo de licenciamento | ~ Complex Licença dupla: AGPLv3 (obrigações de divulgação do código-fonte para uso em rede) ou comercial. A AGPL pode ser restritiva para aplicativos proprietários. | ✓ Commercial Licenças perpétuas. Teste gratuito de 30 dias com todas as funcionalidades, sem marcas d'água. |
| Suporte comercial e SLA | ✓ Yes O site iText inclui contratos de licenciamento comercial e suporte como parte de seu modelo de licenciamento. | ✓ 24/5 Support Suporte técnico especializado com SLA garantido — e-mail, chat ao vivo, telefone. |
| Documentação | ✓ Yes Guias de instalação, artigos da base de conhecimento e referências da API disponíveis (núcleo + complementos). | ✓ Extensive Referência completa da API, mais de 100 guias práticos, tutoriais, exemplos de código, soluções de problemas e vídeos. |
Dados obtidos da documentação oficial do iText, listagem da Associação PDF e referências de pacotes NuGet.
O iText é poderoso, mas possui complexidade de licenciamento AGPL e sobrecarga de configuração de múltiplos pacotes.
IronPDF oferece cobertura completa com configuração mais simples — experimente gratuitamente por 30 dias.
O PDF é um formato de documento portátil criado pelo Adobe Acrobat Reader, amplamente utilizado para compartilhar informações digitalmente pela internet. Ele preserva a formatação dos dados e oferece recursos como a definição de permissões de segurança e proteção por senha. Como desenvolvedor C#, você pode ter se deparado com cenários em que a integração da funcionalidade de PDF em seu aplicativo de software é necessária. Construir algo do zero pode ser uma tarefa demorada e tediosa. Portanto, considerando o desempenho, a eficácia e a eficiência da aplicação, a relação de compromisso entre criar um novo serviço do zero ou usar uma biblioteca pré-construída é significativa.
Existem diversas bibliotecas PDF disponíveis para C#. Neste artigo, exploraremos duas das bibliotecas de PDF mais populares para leitura de documentos PDF em C#.
Software iText
iText, anteriormente conhecido como iText Core, é uma biblioteca PDF para programar documentos PDF em .NET C# e Java. Está disponível sob licença de código aberto (AGPL) e pode ser licenciado para aplicações comerciais.
O iText Core é uma API de alto nível que fornece métodos fáceis para gerar e editar PDFs de todas as maneiras possíveis. Com o iText Core, você pode dividir, mesclar, anotar, preencher formulários, assinar digitalmente e fazer muito mais em arquivos PDF. iText fornece um conversor de HTML para PDF.
IronPDF
Saiba mais sobre o IronPDF , uma API .NET e .NET Framework em C# e Java usada para gerar documentos PDF a partir de HTML, CSS e JavaScript, seja de uma URL, arquivos HTML ou strings HTML. O IronPDF permite manipular arquivos PDF existentes, como dividir, mesclar, anotar, assinar digitalmente e muito mais.
O IronPDF possui mais de 50 recursos para criar, ler e editar arquivos PDF. Prioriza velocidade, facilidade de uso e precisão quando você precisa entregar arquivos PDF profissionais de alta qualidade e com pixels perfeitos usando o Adobe Acrobat Reader. A API é bem documentada e muitos exemplos de código-fonte podem ser encontrados na página de exemplos de código .
Criar um aplicativo de console
Para começar, vamos usar o ambiente de desenvolvimento integrado (IDE) Visual Studio 2022. O Visual Studio é a IDE oficial para desenvolvimento em C# e você precisa tê-lo instalado. Caso ainda não esteja instalado, você pode baixá-lo do site da Microsoft Visual Studio .
Os passos a seguir criarão um novo projeto chamado "DemoApp".
- Abra o Visual Studio e clique em "Criar um novo projeto".

-
Selecione "Aplicativo de console" e clique em "Avançar".

-
Defina o nome do projeto.

- Selecione a versão do .NET . Escolha a versão estável .NET 6.0.

Instale a biblioteca IronPDF.
Após a criação do projeto, é necessário instalar a biblioteca IronPDF para poder utilizá-la. Siga estes passos para instalá-lo.
- Abra o Gerenciador de Pacotes NuGet , seja pelo Explorador de Soluções ou pelas Ferramentas.

- Procure a Biblioteca IronPDF e selecione-a para o projeto atual. Clique em Instalar.

Adicione o seguinte namespace no início do arquivo Program.cs:
using IronPdf;Imports IronPdfInstalar biblioteca iText
Depois que o projeto for criado, a biblioteca iText precisa ser instalada no projeto para que possa ser utilizada. Siga os passos para instalá-lo.
- Abra o Gerenciador de Pacotes NuGet , seja pelo Explorador de Soluções ou pelas Ferramentas.

- Procure pela biblioteca iText e selecione-a para o projeto atual. Clique em instalar.

Adicione os seguintes namespaces no início do arquivo Program.cs:
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf;Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Imports iText.Kernel.PdfAbrir arquivos PDF
Vamos usar o seguinte arquivo PDF para extrair o texto. É um documento PDF de duas páginas.

Utilizando a biblioteca iText
Abrir um arquivo PDF usando a biblioteca iText é um processo de duas etapas. Primeiro, criamos um objeto PdfReader e passamos a localização do arquivo como um parâmetro. Em seguida, usamos a classe PdfDocument para criar um novo documento PDF. O código é o seguinte:
// Initialize a reader instance by specifying the path of the PDF file
PdfReader pdfReader = new PdfReader("sample.pdf");
// Initialize a document instance using the PdfReader
PdfDocument pdfDoc = new PdfDocument(pdfReader);' Initialize a reader instance by specifying the path of the PDF file
Dim pdfReader As New PdfReader("sample.pdf")
' Initialize a document instance using the PdfReader
Dim pdfDoc As New PdfDocument(pdfReader)Usando o IronPDF
Abrir arquivos PDF usando o IronPDF é fácil. Use o método FromFile da classe PdfDocument para abrir PDFs de qualquer local de arquivo. O seguinte código de uma linha abre um arquivo PDF para leitura de dados:
// Open a PDF file using IronPDF and create a PdfDocument instance
var pdf = PdfDocument.FromFile("sample.pdf");' Open a PDF file using IronPDF and create a PdfDocument instance
Dim pdf = PdfDocument.FromFile("sample.pdf")Ler dados de arquivos PDF
Utilizando a biblioteca iText
Para ler dados de PDF não é tão simples na biblioteca iText. Temos que percorrer manualmente cada página do documento PDF para extrair o texto de cada uma delas. O código-fonte a seguir ajuda a extrair o texto do documento PDF página por página:
// Iterate through each page and extract text
for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++)
{
// Define the text extraction strategy
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
// Extract text from the current page using the strategy
string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy);
// Output the extracted text to the console
Console.WriteLine(pageContent);
}
// Close document and reader to release resources
pdfDoc.Close();
pdfReader.Close();' Iterate through each page and extract text
For page As Integer = 1 To pdfDoc.GetNumberOfPages()
' Define the text extraction strategy
Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
' Extract text from the current page using the strategy
Dim pageContent As String = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy)
' Output the extracted text to the console
Console.WriteLine(pageContent)
Next
' Close document and reader to release resources
pdfDoc.Close()
pdfReader.Close()Há muita coisa acontecendo no código acima. Primeiro, declaramos a Estratégia de Extração de Texto e, em seguida, usamos o método GetTextFromPage da classe PdfExtractor para ler o texto. Este método aceita dois parâmetros: o primeiro é a página do documento PDF e o segundo é a estratégia. Para obter a página do documento PDF, utilize a instância de PdfDocument para chamar o método GetPage e passar o número da página como parâmetro. O resultado é retornado como uma string, que é então exibida na tela de saída do console. Finalmente, os objetos PDFReader e PdfDocument são fechados. Além disso, veja o seguinte exemplo de código sobre extração de texto de PDF usando iText.
Saída

Usando o IronPDF
Assim como abrir um arquivo PDF exigia apenas uma linha de código, ler o texto de um arquivo PDF também é um processo que envolve apenas uma linha de código. A classe PDFDocument fornece o método ExtractAllText para ler todo o conteúdo do PDF. Console.WriteLine é usado para imprimir o texto na tela. O código é o seguinte:
// Extract all text from the PDF document
string text = pdf.ExtractAllText();
// Display the extracted text
Console.WriteLine(text);' Extract all text from the PDF document
Dim text As String = pdf.ExtractAllText()
' Display the extracted text
Console.WriteLine(text)Saída

O resultado é preciso e sem erros. No entanto, para usar o método ExtractAllText, você precisa ter uma licença, pois ele funciona apenas no modo de produção. Você pode obter sua chave de licença de avaliação por 30 dias na página de licença de avaliação do IronPDF .
Comparação
Em comparação, ambas as bibliotecas produzem resultados precisos ao extrair texto de um documento PDF. Eles são comparáveis quando se trata de precisão na extração de texto. No entanto, o IronPDF é mais eficiente em termos de legibilidade de código e ergonomia para desenvolvedores.
O IronPDF requer apenas duas linhas de código para realizar a mesma tarefa que o iText. Ele fornece métodos de extração de texto prontos para uso, sem a necessidade de implementar qualquer lógica adicional. O código do iText é um pouco complicado, e você precisa fechar as duas instâncias criadas no momento da abertura de um documento PDF. Por outro lado, o IronPDF limpa a memória automaticamente assim que a tarefa é concluída.
Resumo
Neste artigo, analisamos como ler documentos PDF usando a biblioteca iText em C# e, em seguida, comparamos com o IronPDF. Ambas as bibliotecas fornecem resultados precisos e oferecem diversos métodos de manipulação de PDF. Você pode criar, editar e ler dados de arquivos PDF usando ambas as bibliotecas.
O iText é de código aberto e gratuito para usar, mas com restrições. Pode ser licenciado para uso comercial . O IronPDF também é gratuito e pode ser licenciado para atividades comerciais, com um período de teste gratuito de 30 dias disponível .
Baixe o IronPDF e experimente .

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.
Artigos relacionados

