! ITEXT -Wissensbasis In unserem vorherigen Beitrag haben wir über ITEXTPDF -API für die Arbeit mit PDF -Dateien mit C#/vb.net in .NET -Anwendungen gesprochen. Mit der API können Sie PDF -Dokumente erstellen, bearbeiten und manipulieren, ohne in interne Dateiformatdetails zum PDF -Dateiformat zu gehen. Mit iTextPDF ist einfach zu arbeiten und mit nur wenigen Codezeilen können Sie 3 mit dem Erstellen, Lesen und Manipulieren [PDF -Dateien] beginnen. In diesem Artikel werden wir über die Verwendung von iTextPDF in .NET -Anwendung zum Erstellen, Lesen und Speichern von PDF -Dateien in unserer C# -Anwendung sprechen. Lassen Sie uns also anfangen und uns ansehen, wie wir in C#ein PDF erstellen können.

ITEXTPDF-Installation

Sie können iTextPDF -API entweder aus nuget oder aus iText artefaktorischer Server installieren. Bevor Sie Ihre C# -Anwendung für die Verwendung der iTextPDF -API erstellen können, müssen Sie sie aus einer dieser Quellen aus installieren. Sie können sich auf den Artikel Anweisungen für die Installation der ITEXTPDF -API beziehen, um Ihre Konsolenanwendung für diesen Zweck einzurichten.

Übersicht über die Haupt-ITEXTPDF-API-Klassen

Einige der wichtigsten ITEXTPDF -Klassen sind wie folgt.

pdfdocument

Jedes PDF -Dokument, das mit iTextPDF erstellt wurde, wird unter Verwendung eines Objekts der PDFDocument -Klasse initiiert.

Pdfwriter

Die PDFWriter -Klasse ist für das Schreiben des PDF -Inhalts an ein Ziel wie eine Datei oder einen Stream verantwortlich. Es bietet die Funktionalität, ein PDF -Dokument zu erstellen und das Ausgabeziel anzugeben. Einige wichtige Funktionen und Verantwortlichkeiten der PDFWriter -Klasse sind wie folgt.

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.

Absatz

Die Absatzklasse repräsentiert einen Absatz des Textes in einem PDF -Dokument. Es wird verwendet, um einem PDF -Dokument Textinhalte hinzuzufügen. Hier sind einige wichtige Funktionen und Verantwortlichkeiten der Absatzklasse:

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.

Wie erstelle ich eine PDF -Datei in C#?

Jetzt, da wir eine gute Vorstellung von ITEXTPDF und seinen Hauptklassen haben, erstellen wir ein PDF -Dokument in C# mit iTextPDF -API. Dies kann mit nur wenigen Schritten wie unten erfolgen.

  1. Erstellen Sie ein neues Projekt in Visual Studio.
  2. Installieren Sie die ITEXTPDF C# -Bibliothek mit dem Nuget -Paket -Manager.
  3. Erstellen Sie Instanzen von PDFDocument- und PDFWriter -Klassen
  4. Erstellen Sie Instanzen von Dokument- und Absatzkursen
  5. Schließen Sie das Dokument mit Dokument.CLOSE () Methode

C# Code-Snippet zum Generieren von PDF-Datei

Der folgende C# Code kann verwendet werden, um eine PDF -Datei zu generieren.

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.");
    }
}

Wie aktualisiere ich eine PDF -Datei in C#?

Das Aktualisieren/Bearbeiten einer PDF -Datei in C# kann einfach mit iTextPDF erfolgen.

  1. Öffnen Sie das vorhandene PDF -Dokument mit einem PDFFREADER Objekt.
  2. Erstellen Sie ein PDFWriter -Objekt mit einem neuen oder geänderten Ausgabeziel (z. B. einer Datei oder einem Stream).
  3. Erstellen Sie ein pdfdocument Objekt mit den pdfreader und pdfWriter Objekten.
  4. Greifen Sie mit der PDFDocument -Instanz auf die vorhandenen Seiten und Inhalte des Dokuments zu.
  5. Nehmen Sie die erforderlichen Änderungen am Dokument vor, z. B. Hinzufügen oder Entfernen von Inhalten, Aktualisieren von Text, Änderung von Annotationen usw.
  6. Schließen Sie das pdfdocument , das automatisch die zugehörigen pdffreader und pdfWriter schließt und die Änderungen am Ausgangsziel speichert.

C# Code-Snippet zum Aktualisieren der PDF-Datei

Der folgende C# Code kann verwendet werden, um eine PDF -Datei zu aktualisieren.

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.");
    }
}

Schlussfolgerung

In diesem Artikel haben wir die ITEXTPDF -API für .NET untersucht, um PDF -Dateien in unserer .NET -Anwendung zu erstellen und zu manipulieren. Die API ist Open-Source und wird im Github-Repository als itext-dotnet gehostet. In unseren kommenden Blogs werden wir diese API weiter untersuchen, um mit verschiedenen Komponenten eines PDF -Dokuments wie Tabellen, Bildern, Anmerkungen, reduzierten PDF und vielen anderen zu arbeiten. Also bleibt gespannt.