Ir para o conteúdo do rodapé
COMPARAçãO DE PRODUTOS

IronPDF vs iTextSharp: Lendo arquivos PDF em C

Full Comparison

Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against Itext on pricing, HTML support, and licensing.

View Full Comparison

O IronPDF oferece uma API C# moderna para leitura de PDFs com uma sintaxe mais simples do que o iTextSharp. Ele suporta extração de texto, análise de imagens e acesso a dados de formulários, enquanto o iTextSharp exige licença AGPL para uso comercial, tornando o IronPDF a escolha preferida para aplicações corporativas.

O PDF (Portable Document Format) é um formato de arquivo amplamente utilizado para o compartilhamento consistente e seguro de documentos. A leitura e manipulação desses arquivos em C# é comum em diversas aplicações, como sistemas de gerenciamento de documentos e ferramentas de geração de relatórios. Este artigo compara duas bibliotecas populares para leitura de arquivos PDF em C#: IronPDF e iTextSharp (a mais recente biblioteca .NET iText).

IronPDF é uma biblioteca C# completa da Iron Software que oferece amplos recursos para trabalhar com arquivos PDF. Ele permite criar, editar e manipular documentos PDF com facilidade. O IronPDF é conhecido por sua simplicidade e facilidade de uso, tornando-o uma excelente opção para integrar rapidamente a funcionalidade de PDF em seus aplicativos. A biblioteca utiliza um mecanismo de renderização do Chrome, garantindo uma renderização precisa e suporte aos padrões web modernos.

iTextSharp é outra biblioteca popular para trabalhar com arquivos PDF em C#. Tem sido amplamente utilizado na indústria há muitos anos. No entanto, é crucial entender que a licença do iTextSharp mudou para AGPL (Affero General Public License), o que tem implicações significativas para aplicações comerciais. De acordo com a licença AGPL, se seu aplicativo usa o iTextSharp, você deve disponibilizar todo o código-fonte do seu aplicativo aos usuários — uma exigência frequentemente incompatível com o desenvolvimento de software proprietário. Essa mudança na licença levou muitas empresas a buscarem alternativas como o IronPDF, que oferece licenciamento adequado para uso comercial.

Como faço para ler PDFs usando IronPDF ou iTextSharp em C#?

  1. Crie um novo projeto C# no Visual Studio para comparar o IronPDF com o iTextSharp na leitura de arquivos PDF.
  2. Instale as bibliotecas IronPDF e iTextSharp em seu projeto através do Gerenciador de Pacotes NuGet .
  3. Leia arquivos PDF usando a API intuitiva do IronPDF para extração de texto.
  4. Leia arquivos PDF usando o modelo de objeto mais complexo do iTextSharp.

Quais são os pré-requisitos para este tutorial?

  1. Visual Studio: Certifique-se de ter o Visual Studio ou qualquer outro ambiente de desenvolvimento C# instalado. O IronPDF é compatível com os ambientes Windows, Linux e macOS.
  2. Gerenciador de Pacotes NuGet : Certifique-se de que você pode usar o NuGet para gerenciar pacotes em seu projeto para instalações avançadas.

Como configuro o ambiente de desenvolvimento?

Comece configurando um aplicativo de console em C#. Abra o Visual Studio e selecione Criar um novo projeto. Selecione o tipo de aplicativo de console. Para aplicações de produção, considere consultar nossos guias sobre implantação no Azure ou implantação na AWS se estiver planejando processamento de PDF baseado em nuvem.

Forneça o nome do seu projeto conforme mostrado abaixo. Seguindo as convenções de nomenclatura do .NET , use PascalCase para o nome do seu projeto, a fim de manter a consistência com os padrões corporativos.

Selecione a versão do .NET necessária para o seu projeto. O IronPDF é compatível com .NET Framework, .NET Core e .NET 5+, oferecendo flexibilidade tanto para aplicações legadas quanto para aplicações modernas.

Feito isso, o Visual Studio irá gerar um novo projeto com a estrutura necessária para comparar as capacidades de leitura de PDF.

Como faço para instalar as bibliotecas IronPDF e iTextSharp?

Qual gerenciador de pacotes devo usar para o iTextSharp?

Você pode instalar o iTextSharp a partir do Gerenciador de Pacotes NuGet para iText. A versão mais recente está disponível como um pacote iText. Note-se o número relativamente menor de downloads em comparação com o IronPDF, o que reflete as preocupações de licenciamento que muitos desenvolvedores têm com a AGPL.

Ou através do Gerenciador de Pacotes do Visual Studio, como mostrado abaixo. Procure por iText no Gerenciador de Pacotes e clique em Instalar. Esteja ciente de que aceitar a licença AGPL tem implicações legais para a distribuição do seu projeto.

Como faço para instalar o IronPDF via NuGet?

Você pode instalar o IronPDF a partir do Gerenciador de Pacotes NuGet para IronPDF , conforme mostrado abaixo. Note-se o número significativamente maior de downloads (8,3 milhões), indicando uma adoção mais ampla em aplicações comerciais.

Ou através do gerenciador de pacotes do Visual Studio, como mostrado abaixo. Procure por IronPDF: Biblioteca PDF em C# no Gerenciador de Pacotes e clique em Instalar. O processo de instalação é simples e inclui todas as dependências necessárias para a renderização no Chrome.

Como faço para ler texto de PDFs usando o IronPDF?

Adicione o código abaixo ao seu arquivo Program.cs e forneça um documento PDF de exemplo com o conteúdo especificado. O IronPDF se destaca na extração de texto de PDFs complexos, incluindo aqueles com várias colunas, fontes incorporadas e diversas codificações.

using IronPdf;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Read PDF using IronPDF
ReadUsingIronPdf.Read();

public class ReadUsingIronPDF
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance to read the PDF
        // IronPDF automatically handles various PDF versions and encryption
        var pdfReader = PdfDocument.FromFile(filename);

        // Extract all text from the PDF - maintains formatting and structure
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");

        // Extract all images from the PDF - supports various image formats
        var allImages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images = {allImages.Count()}");

        // Save extracted images if needed (production example)
        for (int i = 0; i < allImages.Count(); i++)
        {
            // allImages[i].SaveAs($"image_{i}.png");
        }
        Console.WriteLine("------------------Image Count From PDF-----------------");

        // Iterate through each page to extract text from them
        Console.WriteLine("------------------One Page Text From PDF-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine($"Page {page + 1} content:");
            Console.WriteLine(text);
        }

        // Additional IronPDF capabilities for production use
        // Extract form data
        var form = pdfReader.Form;
        if (form != null)
        {
            foreach (var field in form.Fields)
            {
                Console.WriteLine($"Form Field: {field.Name} = {field.Value}");
            }
        }

        // Access metadata
        Console.WriteLine($"Author: {pdfReader.MetaData.Author}");
        Console.WriteLine($"Title: {pdfReader.MetaData.Title}");
        Console.WriteLine($"Created: {pdfReader.MetaData.CreationDate}");
    }
}
using IronPdf;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Read PDF using IronPDF
ReadUsingIronPdf.Read();

public class ReadUsingIronPDF
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance to read the PDF
        // IronPDF automatically handles various PDF versions and encryption
        var pdfReader = PdfDocument.FromFile(filename);

        // Extract all text from the PDF - maintains formatting and structure
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");

        // Extract all images from the PDF - supports various image formats
        var allImages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images = {allImages.Count()}");

        // Save extracted images if needed (production example)
        for (int i = 0; i < allImages.Count(); i++)
        {
            // allImages[i].SaveAs($"image_{i}.png");
        }
        Console.WriteLine("------------------Image Count From PDF-----------------");

        // Iterate through each page to extract text from them
        Console.WriteLine("------------------One Page Text From PDF-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine($"Page {page + 1} content:");
            Console.WriteLine(text);
        }

        // Additional IronPDF capabilities for production use
        // Extract form data
        var form = pdfReader.Form;
        if (form != null)
        {
            foreach (var field in form.Fields)
            {
                Console.WriteLine($"Form Field: {field.Name} = {field.Value}");
            }
        }

        // Access metadata
        Console.WriteLine($"Author: {pdfReader.MetaData.Author}");
        Console.WriteLine($"Title: {pdfReader.MetaData.Title}");
        Console.WriteLine($"Created: {pdfReader.MetaData.CreationDate}");
    }
}
Imports IronPdf

' Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#")

' Read PDF using IronPDF
ReadUsingIronPDF.Read()

Public Class ReadUsingIronPDF
    Public Shared Sub Read()
        ' Specify the path to the PDF document
        Dim filename As String = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf"

        ' Create a PDF Reader instance to read the PDF
        ' IronPDF automatically handles various PDF versions and encryption
        Dim pdfReader = PdfDocument.FromFile(filename)

        ' Extract all text from the PDF - maintains formatting and structure
        Dim allText = pdfReader.ExtractAllText()
        Console.WriteLine("------------------Text From PDF-----------------")
        Console.WriteLine(allText)
        Console.WriteLine("------------------Text From PDF-----------------")

        ' Extract all images from the PDF - supports various image formats
        Dim allImages = pdfReader.ExtractAllImages()
        Console.WriteLine("------------------Image Count From PDF-----------------")
        Console.WriteLine($"Total Images = {allImages.Count()}")

        ' Save extracted images if needed (production example)
        For i As Integer = 0 To allImages.Count() - 1
            ' allImages(i).SaveAs($"image_{i}.png")
        Next
        Console.WriteLine("------------------Image Count From PDF-----------------")

        ' Iterate through each page to extract text from them
        Console.WriteLine("------------------One Page Text From PDF-----------------")
        Dim pageCount = pdfReader.PageCount
        For page As Integer = 0 To pageCount - 1
            Dim text As String = pdfReader.ExtractTextFromPage(page)
            Console.WriteLine($"Page {page + 1} content:")
            Console.WriteLine(text)
        Next

        ' Additional IronPDF capabilities for production use
        ' Extract form data
        Dim form = pdfReader.Form
        If form IsNot Nothing Then
            For Each field In form.Fields
                Console.WriteLine($"Form Field: {field.Name} = {field.Value}")
            Next
        End If

        ' Access metadata
        Console.WriteLine($"Author: {pdfReader.MetaData.Author}")
        Console.WriteLine($"Title: {pdfReader.MetaData.Title}")
        Console.WriteLine($"Created: {pdfReader.MetaData.CreationDate}")
    End Sub
End Class
$vbLabelText   $csharpLabel

O que o código IronPDF faz?

  1. Criar um documento do Word: Inicialmente, crie um documento do Word com o conteúdo de texto desejado e salve-o como um documento PDF com o nome Example.pdf.
  2. Instância do PDFReader: O código cria um objeto PdfDocument usando o caminho do arquivo PDF para extrair texto e imagens.
  3. Extrair texto e imagens: O método ExtractAllText é usado para capturar todo o texto do documento, enquanto o método ExtractAllImages extrai imagens.
  4. Extrair texto por página: O texto de cada página é extraído usando o método ExtractTextFromPage.

Que tipo de resultado devo esperar do IronPDF?

Como faço para ler texto de PDFs usando o iTextSharp?

Agora, para comparar a extração de texto do iTextSharp, adicione o código abaixo ao mesmo arquivo Program.cs. Para simplificar, não separamos as classes em arquivos diferentes. Observe como o iTextSharp exige um código mais complexo para operações básicas.

using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf.Xobject;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Call method to read PDF using iTextSharp library
ReadUsingITextSharp.Read();

public class ReadUsingITextSharp
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance - more verbose than IronPDF
        PdfReader pdfReader = new PdfReader(pdfFile);

        // Initialize a new PDF Document - additional step required
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);

        // Extract text from all pages - more complex than IronPDF
        Console.WriteLine("------------------Text From PDF (iTextSharp)-----------------");
        for (int page = 1; page <= pdfDocument.GetNumberOfPages(); page++)
        {
            // Use a text extraction strategy to extract plain text from the PDF
            LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
            string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(page), strategy);
            Console.WriteLine($"Page {page} content:");
            Console.WriteLine(pdfText);
        }

        // Extract images - significantly more complex than IronPDF
        Console.WriteLine("------------------Images From PDF (iTextSharp)-----------------");
        int imageCount = 0;
        for (int pageNum = 1; pageNum <= pdfDocument.GetNumberOfPages(); pageNum++)
        {
            var page = pdfDocument.GetPage(pageNum);
            var resources = page.GetResources();
            var xobjects = resources.GetResource(PdfName.XObject);

            if (xobjects != null)
            {
                foreach (var key in xobjects.KeySet())
                {
                    var xobject = xobjects.GetAsStream(key);
                    if (xobject != null)
                    {
                        var pdfObject = xobjects.Get(key);
                        if (pdfObject.IsStream())
                        {
                            var stream = (PdfStream)pdfObject;
                            var subtype = stream.GetAsName(PdfName.Subtype);
                            if (PdfName.Image.Equals(subtype))
                            {
                                imageCount++;
                                // Extracting the actual image requires additional complex code
                            }
                        }
                    }
                }
            }
        }
        Console.WriteLine($"Total Images Found: {imageCount}");

        // Close the document - manual resource management required
        pdfDocument.Close();
        pdfReader.Close();
    }
}
using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf.Xobject;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Call method to read PDF using iTextSharp library
ReadUsingITextSharp.Read();

public class ReadUsingITextSharp
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance - more verbose than IronPDF
        PdfReader pdfReader = new PdfReader(pdfFile);

        // Initialize a new PDF Document - additional step required
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);

        // Extract text from all pages - more complex than IronPDF
        Console.WriteLine("------------------Text From PDF (iTextSharp)-----------------");
        for (int page = 1; page <= pdfDocument.GetNumberOfPages(); page++)
        {
            // Use a text extraction strategy to extract plain text from the PDF
            LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
            string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(page), strategy);
            Console.WriteLine($"Page {page} content:");
            Console.WriteLine(pdfText);
        }

        // Extract images - significantly more complex than IronPDF
        Console.WriteLine("------------------Images From PDF (iTextSharp)-----------------");
        int imageCount = 0;
        for (int pageNum = 1; pageNum <= pdfDocument.GetNumberOfPages(); pageNum++)
        {
            var page = pdfDocument.GetPage(pageNum);
            var resources = page.GetResources();
            var xobjects = resources.GetResource(PdfName.XObject);

            if (xobjects != null)
            {
                foreach (var key in xobjects.KeySet())
                {
                    var xobject = xobjects.GetAsStream(key);
                    if (xobject != null)
                    {
                        var pdfObject = xobjects.Get(key);
                        if (pdfObject.IsStream())
                        {
                            var stream = (PdfStream)pdfObject;
                            var subtype = stream.GetAsName(PdfName.Subtype);
                            if (PdfName.Image.Equals(subtype))
                            {
                                imageCount++;
                                // Extracting the actual image requires additional complex code
                            }
                        }
                    }
                }
            }
        }
        Console.WriteLine($"Total Images Found: {imageCount}");

        // Close the document - manual resource management required
        pdfDocument.Close();
        pdfReader.Close();
    }
}
Imports IronPdf
Imports iText.Kernel.Pdf
Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Imports iText.Kernel.Pdf.Xobject

' Begin the comparison of IronPDF and iTextSharp for reading PDFs in VB.NET
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in VB.NET")

' Call method to read PDF using iTextSharp library
ReadUsingITextSharp.Read()

Public Class ReadUsingITextSharp
    Public Shared Sub Read()
        ' Specify the path to the PDF document
        Dim pdfFile As String = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf"

        ' Create a PDF Reader instance - more verbose than IronPDF
        Dim pdfReader As New PdfReader(pdfFile)

        ' Initialize a new PDF Document - additional step required
        Dim pdfDocument As New iText.Kernel.Pdf.PdfDocument(pdfReader)

        ' Extract text from all pages - more complex than IronPDF
        Console.WriteLine("------------------Text From PDF (iTextSharp)-----------------")
        For page As Integer = 1 To pdfDocument.GetNumberOfPages()
            ' Use a text extraction strategy to extract plain text from the PDF
            Dim strategy As New LocationTextExtractionStrategy()
            Dim pdfText As String = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(page), strategy)
            Console.WriteLine($"Page {page} content:")
            Console.WriteLine(pdfText)
        Next

        ' Extract images - significantly more complex than IronPDF
        Console.WriteLine("------------------Images From PDF (iTextSharp)-----------------")
        Dim imageCount As Integer = 0
        For pageNum As Integer = 1 To pdfDocument.GetNumberOfPages()
            Dim page = pdfDocument.GetPage(pageNum)
            Dim resources = page.GetResources()
            Dim xobjects = resources.GetResource(PdfName.XObject)

            If xobjects IsNot Nothing Then
                For Each key In xobjects.KeySet()
                    Dim xobject = xobjects.GetAsStream(key)
                    If xobject IsNot Nothing Then
                        Dim pdfObject = xobjects.Get(key)
                        If pdfObject.IsStream() Then
                            Dim stream As PdfStream = CType(pdfObject, PdfStream)
                            Dim subtype = stream.GetAsName(PdfName.Subtype)
                            If PdfName.Image.Equals(subtype) Then
                                imageCount += 1
                                ' Extracting the actual image requires additional complex code
                            End If
                        End If
                    End If
                Next
            End If
        Next
        Console.WriteLine($"Total Images Found: {imageCount}")

        ' Close the document - manual resource management required
        pdfDocument.Close()
        pdfReader.Close()
    End Sub
End Class
$vbLabelText   $csharpLabel

Que tipo de saída o iTextSharp produz?

Quais são as limitações do iTextSharp?

  1. Curva de Aprendizagem : Curva de aprendizagem mais acentuada, especialmente para iniciantes.
  2. Licenciamento : A licença AGPL exige que você torne seu aplicativo de código aberto.
  3. API complexa : Operações simples exigem múltiplos objetos e gerenciamento manual.
  4. Suporte limitado a HTML : Renderização mínima de HTML em comparação com o IronPDF.
  5. Gerenciamento manual de recursos : Você deve fechar os recursos explicitamente.

  6. Curva de Aprendizagem: O iTextSharp tem uma curva de aprendizagem mais acentuada, especialmente para iniciantes.
  7. Licenciamento: O modelo de licenciamento do iTextSharp pode não ser adequado para todos os projetos, especialmente aqueles com restrições orçamentárias.

  8. Facilidade de uso : API simples e direta, seguindo as convenções do .NET .
  9. Renderização de documentos : A renderização com perfeição de pixels mantém a formatação original.
  10. Licenciamento favorável ao comércio : Licenciamento transparente sem as restrições da AGPL.
  11. Funcionalidades completas : Suporte integrado para formulários, assinaturas e anotações.
  12. Melhor desempenho : Otimizado para processamento multithread e de documentos grandes.

  13. Facilidade de uso: O IronPDF é conhecido por sua API simples, facilitando o início do trabalho para os desenvolvedores.
  14. Renderização de Documentos: O IronPDF proporciona uma renderização precisa de documentos PDF, garantindo que o texto extraído seja fiel ao original.

Para equipes que atualmente utilizam o iTextSharp, a migração para o IronPDF é simples. Considere o seguinte exemplo de código:

// Migration Example: Text Extraction
// iTextSharp (old way)
PdfReader reader = new PdfReader(filename);
PdfDocument doc = new PdfDocument(reader);
string text = PdfTextExtractor.GetTextFromPage(doc.GetPage(1));
doc.Close();

// IronPDF (new way)
var pdf = PdfDocument.FromFile(filename);
string text = pdf.ExtractTextFromPage(0); // 0-based indexing

// Migration Example: Form Field Reading
// iTextSharp (complex)
PdfAcroForm form = PdfAcroForm.GetAcroForm(pdfDocument, false);
IDictionary<string, PdfFormField> fields = form.GetFormFields();
foreach (var field in fields)
{
    string value = field.Value.GetValueAsString();
}

// IronPDF (simple)
var form = pdf.Form;
foreach (var field in form.Fields)
{
    string value = field.Value;
}
// Migration Example: Text Extraction
// iTextSharp (old way)
PdfReader reader = new PdfReader(filename);
PdfDocument doc = new PdfDocument(reader);
string text = PdfTextExtractor.GetTextFromPage(doc.GetPage(1));
doc.Close();

// IronPDF (new way)
var pdf = PdfDocument.FromFile(filename);
string text = pdf.ExtractTextFromPage(0); // 0-based indexing

// Migration Example: Form Field Reading
// iTextSharp (complex)
PdfAcroForm form = PdfAcroForm.GetAcroForm(pdfDocument, false);
IDictionary<string, PdfFormField> fields = form.GetFormFields();
foreach (var field in fields)
{
    string value = field.Value.GetValueAsString();
}

// IronPDF (simple)
var form = pdf.Form;
foreach (var field in form.Fields)
{
    string value = field.Value;
}
' Migration Example: Text Extraction
' iTextSharp (old way)
Dim reader As New PdfReader(filename)
Dim doc As New PdfDocument(reader)
Dim text As String = PdfTextExtractor.GetTextFromPage(doc.GetPage(1))
doc.Close()

' IronPDF (new way)
Dim pdf = PdfDocument.FromFile(filename)
Dim text As String = pdf.ExtractTextFromPage(0) ' 0-based indexing

' Migration Example: Form Field Reading
' iTextSharp (complex)
Dim form As PdfAcroForm = PdfAcroForm.GetAcroForm(pdfDocument, False)
Dim fields As IDictionary(Of String, PdfFormField) = form.GetFormFields()
For Each field In fields
    Dim value As String = field.Value.GetValueAsString()
Next

' IronPDF (simple)
Dim form = pdf.Form
For Each field In form.Fields
    Dim value As String = field.Value
Next
$vbLabelText   $csharpLabel

Qual é o nível de precisão da extração de texto em comparação com outros métodos?

O IronPDF se destaca no processamento de PDFs complexos que representam um desafio para outras bibliotecas:

  • Documentos digitalizados : Melhor fluxo de texto ao processar PDFs com OCR.
  • Layouts com múltiplas colunas : Manipulação superior de layouts no estilo jornalístico.
  • Arquivos criptografados : tratamento automático de PDFs protegidos por senha.
  • Suporte a Unicode : Suporte completo a UTF-8 e idiomas internacionais.
  • Fontes incorporadas : Extração precisa independentemente da incorporação da fonte.

Como configuro o licenciamento do IronPDF?

Insira sua chave de licença do IronPDF no arquivo appsettings.json. Para implantações em produção, considere o uso de variáveis ​​de ambiente para o gerenciamento seguro de chaves.

{
  "IronPdf.LicenseKey": "your license key",
  "IronPdf.LoggingMode": "Custom",
  "IronPdf.ChromeGpuMode": "Disabled"
}

Para receber uma licença de avaliação, por favor, forneça seu endereço de e-mail em nossa página de licenciamento. A IronPDF oferece opções flexíveis de licenciamento, incluindo licenças de desenvolvimento, teste e produção. ## Qual biblioteca devo escolher para o meu projeto?

A escolha entre IronPDF e iTextSharp depende das necessidades específicas do seu projeto. Para aplicações empresariais que exigem licenciamento comercial , o IronPDF é a opção preferencial devido à licença AGPL restritiva do iTextSharp. Se você precisa de uma biblioteca simples e fácil de usar para operações comuns em PDF , o IronPDF oferece uma experiência de desenvolvimento superior com sua API intuitiva.

Considere estes fatores ao tomar sua decisão:

O IronPDF foi projetado para integrar a geração de PDFs ao seu aplicativo de forma perfeita, lidando com eficiência com a conversão de documentos formatados em PDFs. Essa abordagem oferece benefícios claros quando você precisa converter formulários da web , páginas HTML locais e outros conteúdos da web em PDF usando o .NET . Seu aplicativo pode baixar , enviar por e-mail ou armazenar documentos na nuvem com facilidade. Seja para gerar faturas , orçamentos , relatórios , contratos ou outros documentos profissionais , os recursos de geração de PDF do IronPDF atendem às suas necessidades. A biblioteca também oferece suporte a recursos avançados, como compressão de PDF , linearização para visualização rápida na web e conformidade com PDF/A para arquivamento de longo prazo. Melhore sua aplicação com os recursos intuitivos e eficientes de geração de PDFs do IronPDF.

ObserveiText e iTextSharp são marcas registradas de seus respectivos proprietários. Este site não é afiliado, endossado ou patrocinado pela iText ou iTextSharp. Todos os nomes de produtos, logotipos e marcas são propriedade de seus respectivos proprietários. As comparações são apenas para fins informativos e refletem informações disponíveis publicamente no momento da redação.

Perguntas frequentes

Como posso ler arquivos PDF em C#?

É possível ler arquivos PDF usando a biblioteca IronPDF, criando uma instância PdfDocument e utilizando métodos como ExtractAllText e ExtractAllImages para extrair o conteúdo do PDF.

O que devo levar em consideração ao escolher uma biblioteca PDF para C#?

Ao escolher entre bibliotecas como IronPDF e iTextSharp para manipulação de PDF em C#, leve em consideração fatores como facilidade de uso, licenciamento, curva de aprendizado e requisitos específicos do projeto.

Como posso instalar uma biblioteca PDF no meu projeto C#?

Você pode instalar o IronPDF através do Gerenciador de Pacotes NuGet no Visual Studio, pesquisando por 'IronPDF: C# PDF Library' e clicando no botão 'Instalar'.

Quais são as vantagens de usar o IronPDF para manipulação de PDFs?

O IronPDF oferece facilidade de uso, uma API simples e renderização precisa de documentos, tornando-o ideal para desenvolvedores que precisam integrar rapidamente a funcionalidade de PDF em seus aplicativos.

Existe alguma diferença na complexidade de utilização do IronPDF e do iTextSharp?

Sim, o IronPDF é conhecido por sua simplicidade, enquanto o iTextSharp oferece mais flexibilidade e extensibilidade, o que pode envolver uma curva de aprendizado mais acentuada.

O IronPDF consegue converter conteúdo HTML para PDF?

Sim, o IronPDF pode converter conteúdo HTML, como formulários e páginas da web, em documentos PDF sem problemas, facilitando tarefas como baixar e enviar PDFs por e-mail.

Quais são algumas das limitações do uso do iTextSharp para tarefas com PDFs?

O iTextSharp pode apresentar uma curva de aprendizado mais acentuada e seu modelo de licenciamento pode não se adequar a todos os orçamentos de projetos, especialmente se você estiver procurando por uma solução simples.

Como o IronPDF aprimora a funcionalidade do aplicativo?

O IronPDF permite a integração de recursos de geração e manipulação de PDFs em aplicativos, possibilitando a conversão de conteúdo da web em PDFs e o processamento de documentos profissionais, como faturas e relatórios.

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 de ferro

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