! IText Knowledge Base Nel nostro post precedente, abbiamo parlato di API ITEXTPDF per lavorare con i file PDF utilizzando C#/VB.NET nelle applicazioni .NET. L’API consente di creare, modificare e manipolare i documenti PDF senza entrare in alcun formato di file interno dettagli del formato di file PDF. L’uso di iTextPDF è facile da lavorare con e con solo poche righe di codice, puoi iniziare a creare, leggere e manipolare file PDF. In questo articolo, parleremo dell’utilizzo di ITextPDF nell’applicazione .NET per creare, leggere e salvare i file PDF a livello di programmazione nella nostra applicazione C#. Quindi, iniziamo e diamo un’occhiata a come possiamo creare un PDF in C#.

ITextpdf Installation

È possibile installare API iTextPDF da NuGet o da IText Artifactory Server . Prima di poter creare l’applicazione C# per l’utilizzo dell’API ITEXTPDF, è necessario installarla da una di queste fonti. È possibile fare riferimento all’articolo Istruzioni per l’installazione di API ITEXTPDF per la configurazione dell’applicazione della console a tale scopo.

Panoramica delle principali classi API ITextPDF

Alcune delle principali classi ITEXTPDF sono le seguenti.

pdfdocument

Ogni documento PDF creato con iTextPDF viene avviato utilizzando un oggetto della classe PDFDocument.

pdfwriter

La classe PDFWriter è responsabile della scrittura del contenuto PDF su una destinazione, come un file o un flusso. Fornisce la funzionalità per creare un documento PDF e specificare la destinazione di output. Alcune caratteristiche chiave e responsabilità della classe PDFWriter sono le seguenti.

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.

paragrafo

La classe di paragrafo rappresenta un paragrafo di testo in un documento PDF. Viene utilizzato per aggiungere contenuto testuale a un documento PDF. Ecco alcune caratteristiche chiave e responsabilità della classe di paragrafo:

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.

Come creare un file PDF in C#?

Ora che abbiamo una buona idea su ITextPDF e le sue classi principali, procediamo a creare un documento PDF in C# usando API ITEXTPDF. Questo può essere fatto con pochi passaggi come di seguito.

  1. Crea un nuovo progetto in Visual Studio.
  2. Installare la libreria ITEXTPDF C# utilizzando il gestore dei pacchetti NUGET.
  3. Creare istanze di PDFDocument e classi PDFWriter
  4. Creare istanze di classi di documenti e paragrafi
  5. Chiudi il documento utilizzando Document.Close () Metodo

c# code snippet per generare file pdf

Il seguente codice C# può essere utilizzato per generare un file 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.");
    }
}

Come aggiornare un file PDF in C#?

L’aggiornamento/modifica di un file PDF in C# può essere facilmente eseguito utilizzando ITextPDF.

  1. Aprire il documento PDF esistente utilizzando un PDFREADER oggetto.
  2. Creare un oggetto pdfwriter con una destinazione di output nuova o modificata (come un file o un flusso).
  3. Creare un PDFDocument Oggetto usando sia Pdfreader e PDFWriter Objects.
  4. Accedere alle pagine esistenti e al contenuto del documento utilizzando l’istanza PDFDocument.
  5. apportare le modifiche necessarie al documento, come l’aggiunta o la rimozione del contenuto, l’aggiornamento del testo, la modifica delle annotazioni, ecc.
  6. Chiudere il PDFDocument , che chiude automaticamente gli PDFreader e PDFWRITER e salva le modifiche alla destinazione di output.

c# code snippet per aggiornare il file pdf

Il seguente codice C# può essere utilizzato per aggiornare un file 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.");
    }
}

conclusione

In questo articolo, abbiamo esplorato l’API ITEXTPDF per .NET per conoscere la creazione e la manipolazione di file PDF all’interno della nostra applicazione .NET. L’API è open-source ed è ospitata sul repository GitHub come iText-Dotnet. Nei nostri prossimi blog, esploreremo ulteriormente questa API per lavorare con diversi componenti di un documento PDF come tabelle, immagini, annotazioni, PDF redatto e molti altri. Quindi rimanete sintonizzati.