Introdução ao iTextSharp: o que é e para que serve
\n\niTextSharp é uma biblioteca poderosa para geração e processamento de documentos PDF na plataforma .NET (C#, VB.NET, F#). Ela é um port da popular biblioteca Java iText e oferece aos desenvolvedores controle total sobre a criação, modificação e leitura de arquivos PDF.
\n\nPrincipais recursos do iTextSharp:
\n- \n
- Criação de documentos PDF do zero \n
- Adição de texto, imagens, tabelas, listas \n
- Trabalho com fontes (incluindo cirílico e Unicode) \n
- Inserção de hiperlinks, marcadores, metadados \n
- Criptografia e proteção por senha \n
- Mesclagem e divisão de arquivos PDF \n
- Adição de marcas d'água e cabeçalhos/rodapés \n
- Trabalho com formulários (AcroForms) \n
A biblioteca é amplamente utilizada em aplicações corporativas para geração de relatórios, faturas, notas fiscais, certificados e outros documentos. O iTextSharp suporta .NET Framework 2.0+ e .NET Core (através do iTextSharp.LGPLv2.Core).
\n\nInstalação do iTextSharp
\n\nPara instalar o iTextSharp em um projeto .NET, utiliza-se o NuGet Package Manager. Existem várias versões da biblioteca:
\n\n- \n
- iTextSharp (versão antiga 5.x, LGPL) — gratuita, mas com limitações \n
- iTextSharp.LGPLv2.Core — fork para .NET Core / .NET 5+ \n
- iText7 (iText.LGPLv2.Core) — nova versão do iText 7 para .NET \n
Instalação via Package Manager Console:
\nInstall-Package iTextSharp.LGPLv2.Core -Version 1.7.0\n\nInstalação via .NET CLI:
\ndotnet add package iTextSharp.LGPLv2.Core --version 1.7.0\n\nInstalação via NuGet UI do Visual Studio:
\n- \n
- Clique direito no projeto → "Manage NuGet Packages" \n
- Pesquise: "iTextSharp.LGPLv2.Core" \n
- Selecione a versão e clique em "Install" \n
Importante: Para trabalhar com cirílico e outras fontes não padrão, será necessária configuração adicional (veja a seção "Dicas").
\n\nInício rápido: criando seu primeiro documento PDF
\n\nVamos ver um exemplo mínimo de criação de um arquivo PDF com o texto "Hello, World!":
\n\nusing System.IO;\nusing iTextSharp.text;\nusing iTextSharp.text.pdf;\n\nclass Program\n{\n static void Main()\n {\n // Criando o documento\n Document doc = new Document();\n \n // Criando um fluxo para gravar no arquivo\n using (FileStream fs = new FileStream("HelloWorld.pdf", FileMode.Create))\n {\n // Obtendo uma instância do PdfWriter\n PdfWriter writer = PdfWriter.GetInstance(doc, fs);\n \n // Abrindo o documento\n doc.Open();\n \n // Adicionando um parágrafo com texto\n doc.Add(new Paragraph("Hello, World!"));\n \n // Fechando o documento\n doc.Close();\n }\n \n Console.WriteLine("PDF criado com sucesso!");\n }\n}\n\nEste código criará o arquivo HelloWorld.pdf na pasta do arquivo executável. Observe a sequência: criar Document → abrir → adicionar conteúdo → fechar.
Principais métodos e funções do iTextSharp
\n\nVamos ver 10 métodos/classes principais da biblioteca com descrição detalhada e exemplos.
\n\n1. Document (classe)
\nO que faz: Representa o próprio documento PDF. Gerencia páginas, margens e orientação.
\nParâmetros do construtor:
\n- \n
Rectangle pageSize— tamanho da página (ex.: PageSize.A4) \n float marginLeft, marginRight, marginTop, marginBottom— margens \n
Exemplo:
\n// Criando um documento A4 com orientação paisagem e margens personalizadas\nDocument doc = new Document(PageSize. Também na biblioteca
Cache em C++: Redis, memcached, LevelDB e outras ferramentas