ByteScout PDF SDK - C# - Set Page Numbers in PDF - ByteScout
Announcement
Our ByteScout SDK products are sunsetting as we focus on expanding new solutions.
Learn More Open modal
Close modal
Announcement Important Update
ByteScout SDK Sunsetting Notice
Our ByteScout SDK products are sunsetting as we focus on our new & improved solutions. Thank you for being part of our journey, and we look forward to supporting you in this next chapter!

ByteScout PDF SDK – C# – Set Page Numbers in PDF

  • Home
  • /
  • Articles
  • /
  • ByteScout PDF SDK – C# – Set Page Numbers in PDF

How to set page numbers in PDF in C# using ByteScout PDF SDK

The tutorial below will demonstrate how to set page numbers in PDF in C#

ByteScout tutorials are designed to explain the code for both C# beginners and advanced programmers. ByteScout PDF SDK is the SDK for pdf documents generation, modification and updates. Can also generate and fill PDF forms. Provides support for text (fonts, style, size, font family), layers, pdf form fields, vector and raster drawings and you can use it to set page numbers in PDF with C#.

This code snippet below for ByteScout PDF SDK works best when you need to quickly set page numbers in PDF in your C# application. In order to implement the functionality, you should copy and paste this code for C# below into your code editor with your app, compile and run your application. Code testing will allow the function to be tested and work properly with your data.

ByteScout PDF SDK free trial version is available on our website. C# and other programming languages are supported.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)

Program.cs
      
using System.Diagnostics; using Bytescout.PDF; namespace PageNumbers { /// <summary> /// This example demonstrates how to add page numbers (labels) visible in the page thumbnails panel of PDF viewer. /// </summary> class Program { static void Main() { // Create new document Document pdfDocument = new Document(); pdfDocument.RegistrationName = "demo"; pdfDocument.RegistrationKey = "demo"; // Add twenty pages for (int i = 0; i < 20; i++) pdfDocument.Pages.Add(new Page(PaperFormat.A4)); // First five pages will have roman numbers I, II, III, ... PageLabel pageLabel = new PageLabel(0, PageNumberingStyle.UppercaseRoman); pdfDocument.PageLabels.Add(pageLabel); // Next five pages will have arabic numbers 6, 7, 8, ... pageLabel.Style = PageNumberingStyle.DecimalArabic; pageLabel.StartPortion = 6; pageLabel.FirstPageIndex = 5; pdfDocument.PageLabels.Add(pageLabel); // Next five pages will have complex page numbers with prefix A-11, A-12, A-13, ... pageLabel.Style = PageNumberingStyle.DecimalArabic; pageLabel.Prefix = "A-"; pageLabel.StartPortion = 11; pageLabel.FirstPageIndex = 10; pdfDocument.PageLabels.Add(pageLabel); // Next five pages will use letters as page numbers P, Q, R, ... pageLabel.Prefix = ""; pageLabel.Style = PageNumberingStyle.UppercaseLetters; pageLabel.StartPortion = 16; pageLabel.FirstPageIndex = 15; pdfDocument.PageLabels.Add(pageLabel); // Force PDF viewer to show page thumbnails panel on start up pdfDocument.PageMode = PageMode.Thumbnail; // Save document to file pdfDocument.Save("result.pdf"); // Cleanup pdfDocument.Dispose(); // Open result document in default associated application (for demo purpose) ProcessStartInfo processStartInfo = new ProcessStartInfo("result.pdf"); processStartInfo.UseShellExecute = true; Process.Start(processStartInfo); } } }

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout PDF SDK Home Page

Explore ByteScout PDF SDK Documentation

Explore Samples

Sign Up for ByteScout PDF SDK Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

VIDEO

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit ByteScout PDF SDK Home Page

Explore ByteScout PDF SDK Documentation

Explore Samples

Sign Up for ByteScout PDF SDK Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

Tutorials:

prev
next