C#/VB.NET: Aggiungi numeri di pagina a documenti PDF esistenti

2023-08-18 05:44:23

Installato tramite NuGet

PM> Install-Package Spire.PDF

Link correlati

I numeri di pagina sono essenziali sia per i documenti elettronici che per quelli cartacei. Rendono più facile per i lettori trovare e accedere rapidamente a parti specifiche di un documento senza dover sfogliare pagina per pagina. In questo articolo imparerai come aggiungere i numeri di pagina ai documenti PDF esistenti in C# e VB.NET utilizzando Spire.PDF for .NET.

Installa Spire.PDF for .NET

Per cominciare, è necessario aggiungere i file DLL inclusi nel pacchetto Spire.PDF for.NET come riferimenti nel progetto .NET. I file DLL possono essere scaricati da questo link o installato tramite NuGet.

PM> Install-Package Spire.PDF

Aggiungi numeri di pagina a documenti PDF esistenti utilizzando C# e VB.NET

È possibile aggiungere numeri di pagina a un documento PDF utilizzando i campi dinamici: PdfPageNumberField, PdfPageCountField e PdfCompositeField.

Come suggeriscono i loro nomi, PdfPageNumberField viene utilizzato per visualizzare il numero di pagina, PdfPageCountField viene utilizzato per visualizzare il conteggio totale delle pagine e PdfCompositeField viene utilizzato per combinare due o più campi dinamici come PdfPageNumberField e PdfPageCountField in un unico campo.

Se desideri solo aggiungere numeri di pagina come Pagina 1, Pagina 2, Pagina 3... a un documento PDF, puoi semplicemente utilizzare PdfPageNumberField. Se desideri aggiungere numeri di pagina come Pagina X di Y al documento, devi utilizzare PdfPageNumberField, PdfPageCountField e PdfCompositeField.

I seguenti passaggi mostrano come aggiungere i numeri di pagina "Pagina X di Y" a un documento PDF esistente:

  • Inizializza un'istanza della classe PdfDocument.
  • Carica un documento PDF utilizzando il metodo PdfDocument.LoadFromFile().
  • Inizializza un'istanza della classe PdfPageNumberField.
  • Inizializza un'istanza della classe PdfPageCountField.
  • Inizializza un'istanza della classe PdfCompositeField.
  • Impostare l'allineamento del testo per il campo composito tramite la proprietà PdfCompositeField.StringFormat.
  • Passa attraverso ogni pagina nel documento PDF, quindi disegna il campo composito nella posizione specifica della pagina utilizzando il metodo PdfCompositeField.Draw().
  • Salvare il documento risultato utilizzando il metodo 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

Richiedi una licenza temporanea

Se desideri rimuovere il messaggio di valutazione dai documenti generati o eliminare le limitazioni delle funzioni, per favore richiedere una licenza di prova di 30 giorni per te.

Guarda anche