! Base de conhecimento do ITEXT Em nossa postagem anterior, conversamos sobre ITEXTPDF API para trabalhar com arquivos PDF usando C#/vb.net em aplicativos .NET. A API permite criar, editar e manipular documentos em PDF sem entrar em detalhes internos do formato de arquivo do formato de arquivo PDF. Usando o iTextpdf é fácil de trabalhar com e com apenas algumas linhas de código, você pode começar a criar, ler e manipular arquivos PDF. Neste artigo, falaremos sobre o uso do aplicativo ITEXTPDF no .NET para criar, ler e salvar arquivos PDF programaticamente em nosso aplicativo C#. Então, vamos começar e dar uma olhada em como podemos criar um PDF em C#.

ITEXTPDF Instalação

Você pode instalar a API ITEXTPDF de NUGET ou do servidor Artifactory iText . Antes de criar seu aplicativo C# para usar a API ITEXTPDF, você precisa instalá -lo a partir de qualquer uma dessas fontes. Você pode consultar o artigo Instruções para instalar a API ITEXTPDF para configurar seu aplicativo de console para esse fim.

Visão geral das classes principais da API ITEXTPDF {.wp-block-heading} Algumas das principais classes do iTextpdf são as seguintes.

pdfdocument

Todo documento PDF criado com o ITEXTPDF é iniciado usando um objeto da classe PDFDocument.

pdfwriter

A classe PDFWriter é responsável por gravar o conteúdo do PDF em um destino, como um arquivo ou um fluxo. Ele fornece a funcionalidade para criar um documento PDF e especificar o destino de saída. Alguns recursos e responsabilidades importantes da classe PDFWriter são os seguintes.

Destination ConfigurationThe PdfWriter constructor allows you to specify the output destination for the PDF content. It can accept parameters like a file path, a Stream object, or an instance of IOutputStreamCounter. This determines where the PDF content will be written.
PDF Document CreationWhen you create a new instance of PdfWriter, it automatically creates a new PdfDocument object associated with it. The PdfDocument represents the logical structure of a PDF file and provides methods to manipulate its content.
PDF Compression and Version ControlThe PdfWriter class allows you to configure various aspects of the PDF file, such as compression settings and PDF version compatibility.
Writing PDF ContentOnce you have a PdfWriter instance, you can use it to write content to the associated PdfDocument. You can add pages, create annotations, add text, images, and other graphical elements to the PDF document using the provided methods.
Closing the WriterAfter you finish writing the PDF content, it’s important to close the PdfWriter to ensure the document is finalized and any necessary resources are released.

parágrafo

A classe de parágrafo representa um parágrafo de texto em um documento PDF. É usado para adicionar conteúdo textual a um documento PDF. Aqui estão alguns recursos e responsabilidades importantes da classe de parágrafos:

Text ContentThe primary purpose of the Paragraph class is to hold and display textual content within a PDF document. You can pass a string or any other text representation to the Paragraph constructor to initialize its content.
Text FormattingThe Paragraph class allows you to apply various formatting options to the text, such as font size, font family, text color, bold, italic, underline, and more. You can use methods like SetFontSize(), SetFont(), SetBold(), SetItalic(), SetUnderline(), etc., to specify the desired formatting.
Alignment and IndentationThe Paragraph class provides methods to set the alignment of the text within the paragraph. You can align the text to the left, right, or center, or justify it. Additionally, you can apply indentation to control the left and right margins of the paragraph.
Inline ElementsApart from plain text, you can also add inline elements within a Paragraph. For example, you can include phrases or words with different formatting styles, add hyperlinks, insert images, or include other elements supported by iText.
NestingYou can nest multiple paragraphs within each other or combine them with other iText elements like tables, lists, or chunks to create complex document structures.
Integration with DocumentThe Paragraph instances can be added to the Document object using the Add() method. This allows you to include paragraphs in your PDF document at the desired location.

Como criar um arquivo PDF em C#?

Agora que temos uma boa idéia sobre o ITEXTPDF e suas principais classes, vamos criar um documento PDF em C# usando a API ITEXTPDF. Isso pode ser feito com apenas algumas etapas, como abaixo.

  1. Crie um novo projeto no Visual Studio.
  2. Instale a biblioteca ITEXTPDF C# usando o Nuget Package Manager.
  3. Crie instâncias de classes pdfdocument e pdfwriter
  4. Crie instâncias de classes de documentos e parágrafos
  5. Feche o documento usando o método Document.Close ()

c# snippet para gerar arquivo pdf

O código c# pode ser usado para gerar um arquivo PDF.

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;

class Program
{
    static void Main()
    {
        // Specify the output file path
        string outputPath = "example.pdf";
        // Create a new PDF document
        PdfWriter writer = new PdfWriter(outputPath);
        PdfDocument pdf = new PdfDocument(writer);
        // Create a document instance
        Document document = new Document(pdf);
        // Add content to the document
        document.Add(new Paragraph("Hello, World!"));
        // Close the document
        document.Close();
        Console.WriteLine("PDF created successfully.");
    }
}

Como atualizar um arquivo PDF em C#?

Atualizar/editar um arquivo PDF em C# pode ser feito facilmente usando o ITEXTPDF.

  1. Abra o documento PDF existente usando um objeto PDFReader .
  2. Crie um objeto PDFWriter com um destino de saída novo ou modificado (como um arquivo ou um fluxo).
  3. Crie um objeto PDFDocument usando os objetos pdfreader e pdfwriter .
  4. Acesse as páginas e o conteúdo existentes do documento usando a instância do PDFDocument.
  5. Faça as modificações necessárias no documento, como adicionar ou remover conteúdo, atualizar o texto, modificar anotações, etc.
  6. Feche o PDFDocument , que fecha automaticamente o associado PDFReader e PDFWriter também e salva as alterações no destino de saída.

c# snippet para atualizar o arquivo pdf

O código C# pode ser usado para atualizar um arquivo PDF.

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;

class Program
{
    static void Main()
    {
        string filePath = "existing.pdf";
        string outputPath = "updated.pdf";
        // Open the existing PDF document
        PdfReader reader = new PdfReader(filePath);
        // Create a new PDF document with modified output destination
        PdfWriter writer = new PdfWriter(outputPath);
        // Create a PdfDocument object with both the reader and writer
        PdfDocument pdfDoc = new PdfDocument(reader, writer);
        // Access the first page of the document
        PdfPage firstPage = pdfDoc.GetPage(1);
        // Create a document instance for the page
        Document document = new Document(pdfDoc, firstPage);
        // Add a new paragraph to the document
        document.Add(new Paragraph("This is a new paragraph added to the existing PDF."));
        // Close the document, which saves the changes
        document.Close();
        // Close the reader
        reader.Close();
        Console.WriteLine("PDF updated successfully.");
    }
}

Conclusão

Neste artigo, exploramos a API ITEXTPDF para .NET para aprender sobre a criação e manipulação de arquivos PDF em nosso aplicativo .NET. A API é de código aberto e é hospedado no repositório do GitHub como itext-dotnet. Em nossos próximos blogs, exploraremos ainda mais essa API para trabalhar com diferentes componentes de um documento em PDF, como tabelas, imagens, anotações, PDF redigido e muitos outros. Então fique ligado.