C#/VB.NET: Seitenzahlen zu vorhandenen PDF-Dokumenten hinzufügen

2023-08-18 05:49:01

Über NuGet installiert

PM> Install-Package Spire.PDF

verwandte Links

Seitenzahlen sind sowohl für elektronische als auch für Papierdokumente wichtig. Sie erleichtern es den Lesern, bestimmte Teile eines Dokuments schnell zu finden und darauf zuzugreifen, ohne Seite für Seite blättern zu müssen. In diesem Artikel erfahren Sie, wie das geht Fügen Sie Seitenzahlen zu vorhandenen PDF-Dokumenten in C# und VB.NET hinzu Verwendung von Spire.PDF for .NET.

Installieren Sie Spire.PDF for .NET

Zunächst müssen Sie die im Spire.PDF for.NET-Paket enthaltenen DLL-Dateien als Referenzen in Ihrem .NET-Projekt hinzufügen. Die DLLs-Dateien können entweder über diesen Link heruntergeladen oder über NuGet installiert werden.

PM> Install-Package Spire.PDF

Fügen Sie Seitenzahlen zu vorhandenen PDF-Dokumenten mit C# und VB.NET hinzu

Sie können einem PDF-Dokument Seitenzahlen hinzufügen, indem Sie die dynamischen Felder PdfPageNumberField, PdfPageCountField und PdfCompositeField verwenden.

AWie der Name schon sagt, wird das PdfPageNumberField zum Anzeigen der Seitenzahl verwendet, das PdfPageCountField zum Anzeigen der Gesamtseitenzahl und das PdfCompositeField zum Kombinieren von zwei oder mehr dynamischen Feldern wie PdfPageNumberField und PdfPageCountField in einem einzigen Feld.

Wenn Sie einem PDF-Dokument nur Seitenzahlen wie Seite 1, Seite 2, Seite 3 usw. hinzufügen möchten, können Sie einfach PdfPageNumberField verwenden. Wenn Sie dem Dokument Seitenzahlen wie Seite X von Y hinzufügen möchten, müssen Sie PdfPageNumberField, PdfPageCountField und PdfCompositeField verwenden.

Die folgenden Schritte zeigen Ihnen, wie Sie „Seite X von Y“-Seitenzahlen zu einem vorhandenen PDF-Dokument hinzufügen:

  • Initialisieren Sie eine Instanz der PdfDocument-Klasse.
  • Laden Sie ein PDF-Dokument mit der Methode PdfDocument.LoadFromFile().
  • Initialisieren Sie eine Instanz der PdfPageNumberField-Klasse.
  • Initialisieren Sie eine Instanz der PdfPageCountField-Klasse.
  • Initialisieren Sie eine Instanz der PdfCompositeField-Klasse.
  • Legen Sie die Textausrichtung für das zusammengesetzte Feld über die Eigenschaft PdfCompositeField.StringFormat fest.
  • Durchlaufen Sie jede Seite im PDF-Dokument und zeichnen Sie dann das zusammengesetzte Feld an der spezifischen Stelle der Seite mit der Methode PdfCompositeField.Draw().
  • Speichern Sie das Ergebnisdokument mit der Methode PdfDocument.SaveToFile().
  • C#
  • VB.NET
using Spire.Pdf;
    using Spire.Pdf.AutomaticFields;
    using Spire.Pdf.Graphics;
    using System.Drawing;
    
    
    namespace AddPageNumbers
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Load a PDF document
                PdfDocument pdf = new PdfDocument();
                pdf.LoadFromFile("Sample.pdf");
    
                //Create a true type font
                PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Arial", 10f, FontStyle.Regular), true);
    
                //Create a PdfPageNumberField instance
                PdfPageNumberField pageNumber = new PdfPageNumberField();
    
                //Create a PdfPageCountField instance
                PdfPageCountField pageCount = new PdfPageCountField();
    
                //Create a PdfCompositeField instance
                PdfCompositeField compositeField = new PdfCompositeField(font, PdfBrushes.Black, "Page {0} of {1}", pageNumber, pageCount);
                //Set the text alignment for the composite field
                compositeField.StringFormat = new PdfStringFormat(PdfTextAlignment.Left, PdfVerticalAlignment.Top);
    
                //Loop through the pages
                for(int i = 0; i < pdf.Pages.Count; i ++)
                {
                    //Draw composite filed on each page
                    compositeField.Draw(pdf.Pages[i].Canvas, pdf.Pages[i].Size.Width / 2 - 20, pdf.Pages[i].Size.Height - pdf.PageSettings.Margins.Bottom);
                }
    
                //Save the result document
                pdf.SaveToFile("AddPageNumbers.pdf");
            }
        }
    }

C#/VB.NET: Add Page Numbers to Existing PDF Documents

Beantragen Sie eine temporäre Lizenz

Wenn Sie die Bewertungsmeldung aus den generierten Dokumenten entfernen oder die Funktionseinschränkungen beseitigen möchten, wenden Sie sich bitte an uns Fordern Sie eine 30-Tage-Testlizenz an für sich selbst.

Siehe auch