Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE

Wie man Seitenzahlen in PDF mit iTextSharp in C# hinzufügt

"Portable Document Format," oder PDF, ist ein von Adobe erstelltes Dateiformat. PDFs sind praktisch, wenn es darum geht, Dokumente zu präsentieren, die ihre Texte und Bilder einheitlich formatiert haben müssen. In der heutigen Welt sind PDF-Dateien unverzichtbar und werden für die Dokumentenerstellung und Rechnungsstellung in allen Unternehmenssektoren genutzt. Dank der zahlreichen PDF-Bibliotheken, die derzeit auf dem Markt sind, ist die Erstellung von PDFs praktisch instinktiv geworden. Um die passende PDF-Bibliothek für Sie auszuwählen, ist es wichtig, die Vorteile und Eigenschaften jeder einzelnen zu bewerten, bevor Sie sie für Ihr Projekt nutzen.

In diesem Artikel werden wir sehen, wie man mit iTextSharp C# Seitenzahlen in ein PDF einfügt. Außerdem werden wir iTextSharp mit IronPDF vergleichen.

Wie man Seitenzahlen in PDFs mit iTextSharp C# hinzufügt

  1. Neues C#-Projekt in beliebiger IDE erstellen.
  2. Erstellen Sie ein neues PDF-Objekt.
  3. Fügen Sie die Seitenzahlen der HTML-Fußzeile hinzu.
  4. Erstellen Sie ein PDF aus HTML-Inhalten.
  5. Speichern Sie die PDF-Datei auf Ihrem Computer.

Was ist IronPDF

IronPDF ist ein leistungsfähiges PDF .NET Framework, das Entwickler verwenden, um PDF-Dateien einfach zu erstellen, anzuzeigen und zu bearbeiten. IronPDF ist ein anspruchsvolles Tool, das intern auf einer Chromium-Engine läuft. Es kann HTML5, JavaScript, CSS und Bilddateien in PDFs konvertieren, benutzerdefinierte Kopf- und Fußzeilen hinzufügen und PDFs genau so erzeugen, wie sie in einem Browser erscheinen. Viele Online- und Netzformate, einschließlich HTML, ASPX, Razor View und MVC, werden von IronPDF unterstützt.

IronPDF Funktionen

  • Nutzung von .NET C#-Code, um PDF-Dateien einfach zu erstellen, zu lesen und zu bearbeiten.
  • Erstellung von PDFs aus einer Website-URL, wobei User-Agents, Proxys, Cookies, HTTP-Header und Formularvariablen verwaltet werden, um die Anmeldung über HTML-Anmeldeformulare zu ermöglichen.
  • Extraktion von Bildern aus bestehenden PDF-Dateien.
  • Einbeziehen von Elementen in ein PDF: Tabelle, Text, Bilder, Lesezeichen, Wasserzeichen, Header, Footer und mehr.
  • Möglichkeit, Seiten aus mehreren PDF-Dokumenten problemlos zu teilen und zu kombinieren.

Um mehr über die IronPDF-Dokumentation zu erfahren, klicken Sie hier.

Installation von IronPDF

Wählen Sie in den Visual Studio Tools den NuGet-Paketmanager aus, und Sie finden die visuelle Befehlszeilenschnittstelle unter Werkzeuge. Der folgende Befehl sollte im Tab des Paketmanagement-Terminals eingegeben werden.

Install-Package IronPdf

Oder wir können die Paketmanager-Methode verwenden. Mithilfe der NuGet-Paketmanager-Option von Visual Studio ist es möglich, das Paket direkt in die Lösung zu installieren. Ein Suchfeld ist verfügbar, um Pakete auf der NuGet-Website zu lokalisieren. Wir müssen nur nach "IronPDF" im Paketmanager suchen, wie die Abbildung unten zeigt:

Wie man Seitenzahlen in PDFs mit iTextSharp in C# hinzufügt: Abbildung 1 - IronPDF aus dem Paketmanager installieren

Die Liste der relevanten Suchergebnisse wird in der obigen Abbildung angezeigt. Bitte treffen Sie die erforderlichen Auswahlmöglichkeiten, damit das Paket auf Ihrem System installiert wird.

Jetzt, da das Paket heruntergeladen und installiert ist, kann es im aktuellen Projekt verwendet werden.

Was ist iTextSharp

iTextSharp ist eine flexible Bibliothek zur Erstellung und Änderung von PDF-Dokumenten in C#. Es bietet mehrere Funktionen, darunter Verschlüsselung, PDF-Zusammenführung, Text- und Bildextraktion und vieles mehr. iTextSharp ist ein effizientes Tool für zahlreiche Aufgaben, einschließlich der Hinzufügung von Seitenzahlen zu PDFs.

iTextSharp Eigenschaften

  • Eine API zur Erstellung von PDF-Dokumenten wird über die iText-Bibliothek bereitgestellt.
  • Sowohl HTML- als auch XML-Strings können mit dem iText-Programm in PDF-Dateien analysiert werden.
  • Wir können Lesezeichen, Seitenzahlen und Markierungen zu unseren PDF-Dokumenten mit der iText-Bibliothek hinzufügen.
  • Mit der iText-Bibliothek können wir auch ein PDF-Dokument in mehrere PDFs aufteilen oder mehrere PDF-Dokumente zu einem einzelnen PDF zusammenführen.
  • Wir können PDF-Formulare mit iText ändern.

iTextSharp installieren

Nutzen Sie den NuGet-Paketmanager, um nach iText zu suchen. iText7 und iText.pdfhtml sind notwendige Installationen, da iText-Funktionen über viele Pakete verteilt sind.

Sollten Sie sich für die visuelle Befehlszeilenschnittstelle entscheiden, müssen die folgenden Pakete installiert werden:

Install-Package iText7
Install-Package itext7.pdfhtml
Install-Package iText7
Install-Package itext7.pdfhtml
SHELL

Da iText 7 die neueste Version ist, verwenden wir diese in unserer Lösung.

Hinzufügen von Seitenzahlen mit IronPDF

Das Hinzufügen von Seitenzahlen zu PDF-Dateien wird durch die umfassende Bibliothek von IronPDF vereinfacht. Um dies zu veranschaulichen, siehe den Code unten:

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Initialize the IronPdf renderer
        var renderer = new IronPdf.HtmlToPdf();

        // HTML content to convert to PDF
        string header = "<h1>Hello Ironpdf!</h1>";

        // Render the HTML content to PDF
        PdfDocument pdf = renderer.RenderHtmlAsPdf(header);

        // Define the footer with page number placeholders
        HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter
        {
            HtmlFragment = "<center><i>{page} of {total-pages}</i></center>"
        };

        // Add footer to the PDF
        pdf.AddHtmlFooters(htmlFooter);

        // Save the output PDF file
        pdf.SaveAs("output.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Initialize the IronPdf renderer
        var renderer = new IronPdf.HtmlToPdf();

        // HTML content to convert to PDF
        string header = "<h1>Hello Ironpdf!</h1>";

        // Render the HTML content to PDF
        PdfDocument pdf = renderer.RenderHtmlAsPdf(header);

        // Define the footer with page number placeholders
        HtmlHeaderFooter htmlFooter = new HtmlHeaderFooter
        {
            HtmlFragment = "<center><i>{page} of {total-pages}</i></center>"
        };

        // Add footer to the PDF
        pdf.AddHtmlFooters(htmlFooter);

        // Save the output PDF file
        pdf.SaveAs("output.pdf");
    }
}
$vbLabelText   $csharpLabel

Erklärung

  1. Initialisieren Sie den Renderer: Wir erstellen eine Instanz von HtmlToPdf, die die HTML-zu-PDF-Konvertierungsfunktion bietet.
  2. Definieren Sie HTML-Inhalt: Der HTML-Inhalt, der in ein PDF konvertiert werden soll, wird angegeben.
  3. Rendern Sie HTML-Inhalt: Die RenderHtmlAsPdf-Funktion wird verwendet, um das HTML in ein PDF-Dokument zu konvertieren.
  4. Definieren Sie den Footer: Seitenzahlen werden als Platzhalter im HTML-Fußzeilentext dargestellt.
  5. Fügen Sie den Footer hinzu und speichern Sie das PDF: Wenden Sie den Footer auf das Dokument an und speichern Sie es als PDF-Datei.

Wie man Seitenzahlen in PDFs mit iTextSharp in C# hinzufügt: Abbildung 2 - IronPDF: Erzeugtes PDF mit Seitenzahlen

Um mehr über den IronPDF-Code zu erfahren, schauen Sie hier.

Hinzufügen von Seitenzahlen mit iTextSharp

Erstellen wir zuerst ein neues PDF-Dokument mit iTextSharp. Hier ist ein einfaches Beispiel, wie man ein neues PDF-Dokument mit Seitenzahlen erstellt:

using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create a new PDF document
            Document document = new Document();
            PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("output.pdf", FileMode.Create));

            // Open the document to add content
            document.Open();
            document.Add(new Paragraph("Hello, world!"));

            // Attach page number event to PDF writer
            writer.PageEvent = new PageNumberEventHandler();

            // Close the document
            document.Close();
        }
    }

    public class PageNumberEventHandler : PdfPageEventHelper
    {
        public override void OnEndPage(PdfWriter writer, Document document)
        {
            base.OnEndPage(writer, document);

            // Create a table for the page number
            PdfPTable table = new PdfPTable(1);
            table.TotalWidth = 300f;
            table.HorizontalAlignment = Element.ALIGN_CENTER;

            // Add page number to the table cell
            PdfPCell cell = new PdfPCell(new Phrase($"Page {writer.PageNumber}"));
            cell.Border = 0;
            table.AddCell(cell);

            // Write the table at the bottom of the page
            table.WriteSelectedRows(0, -1, 150, document.Bottom, writer.DirectContent);
        }
    }
}
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create a new PDF document
            Document document = new Document();
            PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("output.pdf", FileMode.Create));

            // Open the document to add content
            document.Open();
            document.Add(new Paragraph("Hello, world!"));

            // Attach page number event to PDF writer
            writer.PageEvent = new PageNumberEventHandler();

            // Close the document
            document.Close();
        }
    }

    public class PageNumberEventHandler : PdfPageEventHelper
    {
        public override void OnEndPage(PdfWriter writer, Document document)
        {
            base.OnEndPage(writer, document);

            // Create a table for the page number
            PdfPTable table = new PdfPTable(1);
            table.TotalWidth = 300f;
            table.HorizontalAlignment = Element.ALIGN_CENTER;

            // Add page number to the table cell
            PdfPCell cell = new PdfPCell(new Phrase($"Page {writer.PageNumber}"));
            cell.Border = 0;
            table.AddCell(cell);

            // Write the table at the bottom of the page
            table.WriteSelectedRows(0, -1, 150, document.Bottom, writer.DirectContent);
        }
    }
}
$vbLabelText   $csharpLabel

Erklärung

  1. PDF-Dokument erstellen: Initialisieren Sie ein neues Document und PdfWriter, um eine leere PDF-Datei zu erzeugen.
  2. Inhalt hinzufügen: Fügen Sie dem Dokument grundlegende Inhalte wie Absätze hinzu.
  3. Seitennummerierung: Nutzen Sie die Ereignisbehandlung von iTextSharp, um Seitenzahlen einzufügen. Wir erstellen eine benutzerdefinierte Klasse, die von PdfPageEventHelper erbt.
  4. Überschreiben von OnEndPage: Überschreiben Sie in der benutzerdefinierten Klasse die Methode OnEndPage, um Seitenzahlen am unteren Rand jeder Seite hinzuzufügen.
  5. Dokument schließen: Schließen Sie das Dokument, um es abzuschließen.

Wie man Seitenzahlen in PDFs mit iTextSharp in C# hinzufügt: Abbildung 3 - iTextSharp: Erzeugtes PDF mit Seitenzahlen

Abschluss

Zusammenfassend positionieren sich IronPDF's Spezialisierung, Benutzerfreundlichkeit und nahtlose Integration in .NET-Umgebungen als die beste Option für Szenarien, die HTML-zu-PDF-Konvertierung und verwandte Funktionen erfordern, obwohl iTextSharp immer noch ein starker Konkurrent im Bereich der C# PDF-Manipulationsbibliotheken ist. Mit IronPDF können Sie Rechnungen, Berichte und dynamisch generierte Dokumente aus HTML-Inhalten mit der erforderlichen Leichtigkeit, Effizienz und Anpassungsfähigkeit erstellen, die im modernen Entwicklungsumfeld notwendig sind.

Eine permanente Lizenz, Upgrade-Optionen und ein Jahr Software-Maintenance sind in der Lite-Ausgabe von IronPDF enthalten. Die mit Wasserzeichen versehene Testphase ermöglicht es den Benutzern, das Produkt in praxisnahen Umgebungen zu bewerten. Besuchen Sie die Lizenz Seite, um mehr zu erfahren. Für weitere Details zu Iron Software besuchen Sie deren Website.

Hinweis:iTextSharp ist eine eingetragene Marke des jeweiligen Eigentümers. Diese Seite ist nicht mit iTextSharp verbunden, genehmigt oder gesponsert. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Inhaber. Die Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich verfügbare Informationen zum Zeitpunkt des Schreibens wider.

Häufig gestellte Fragen

Wie kann ich mit iTextSharp in C# Seitenzahlen zu einem PDF hinzufügen?

Um mit iTextSharp in C# Seitenzahlen hinzuzufügen, können Sie eine benutzerdefinierte Klasse erstellen, die von PdfPageEventHelper erbt. Überschreiben Sie die OnEndPage-Methode, um Seitenzahlen einzufügen, und fügen Sie dieses Ereignis der PdfWriter-Instanz hinzu.

Warum sind PDFs in verschiedenen Sektoren entscheidend?

PDFs bewahren das konsistente Format von Text und Bildern, was für die Dokumentenerstellung und Rechnungsstellung wichtig ist. Sie sind zuverlässig für professionelle Dokumente.

Was sind die Vorteile der Verwendung von IronPDF für die PDF-Manipulation?

IronPDF bietet robuste Funktionen zum Erstellen, Ansehen und Bearbeiten von PDFs in .NET-Umgebungen. Es zeichnet sich durch das Konvertieren von HTML, JavaScript und Bildern in PDF aus und unterstützt benutzerdefinierte Kopf- und Fußzeilen sowie Wasserzeichen.

Kann IronPDF HTML-zu-PDF-Konvertierungen mit JavaScript-Unterstützung durchführen?

Ja, IronPDF kann HTML-Inhalte, einschließlich JavaScript, in PDFs umwandeln und dabei das Layout und die Funktionalität beibehalten, wie es in einem Webbrowser angezeigt wird.

Wie kann ich IronPDF in einem C#-Projekt installieren?

Sie können IronPDF mit dem NuGet-Paket-Manager in Visual Studio installieren. Suchen Sie einfach nach 'IronPDF' und fügen Sie es zu Ihrem Projekt hinzu, um seine Funktionen zu nutzen.

Was ist die Bedeutung der Testphase, die von IronPDF angeboten wird?

Die Testphase von IronPDF ermöglicht es Entwicklern, seine Funktionen und Funktionalitäten in realen Anwendungen mit einem wassergezeichneten Test zu erkunden, wodurch sie seine Eignung vor dem Kauf einer Lizenz beurteilen können.

Wie vergleicht sich iTextSharp mit IronPDF beim Hinzufügen von Seitenzahlen?

Während iTextSharp Ereignisbehandlung zum Hinzufügen von Seitenzahlen verwendet, bietet IronPDF einen einfacheren Ansatz mit HTML-Vorlagen für Kopf- und Fußzeilen, was es ideal für .NET-Entwickler macht, die nach Benutzerfreundlichkeit suchen.

Was sollte bei der Wahl einer PDF-Bibliothek für ein C#-Projekt berücksichtigt werden?

Berücksichtigen Sie die Funktionen, die jede Bibliothek bietet. Beispielsweise spezialisiert sich IronPDF auf HTML-zu-PDF-Konvertierung und integriert sich gut mit .NET-Frameworks, während iTextSharp starke Verschlüsselungs- und Textextraktionsmöglichkeiten bietet.

Ist iTextSharp mit .NET 10 kompatibel, um Seitenzahlen hinzuzufügen, oder sollte ich iText 7 verwenden?

iTextSharp (Version 5.x) ist offiziell veraltet und wird nur noch im Wartungsmodus weiterentwickelt. Es erhält lediglich Sicherheitsupdates, keine neuen Funktionen mehr. Da es nicht direkt für .NET 10 entwickelt wurde, kann die Verwendung in aktuellen .NET-Versionen zu Kompatibilitätsproblemen führen. Für neue Projekte oder solche, die auf .NET 10 aktualisieren, wird iText 7 (oder iText Core) dringend empfohlen, da es die neuesten Frameworks unterstützt und Verbesserungen gegenüber iTextSharp bietet. ([itextpdf.com](https://itextpdf.com/products/itextsharp?utm_source=openai))

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen