How to add page numbers to pages in PDF document using ByteScout PDF SDK - ByteScout

How to add page numbers to pages in PDF document using ByteScout PDF SDK

  • Home
  • /
  • Articles
  • /
  • How to add page numbers to pages in PDF document using ByteScout PDF SDK

Adding text labels with page numbers to each page of PDF document
PDF document with page numbers added on the page
The example demonstrates how to add page numbers (labels) visible in the page thumbnails panel of PDF viewer using ByteScout PDF SDK.

Program.vb:
VB

'*******************************************************************
'       ByteScout PDF SDK
'                                                                   
'       Copyright © 2016 Bytescout, https://bytescout.com        
'       ALL RIGHTS RESERVED                                         
'                                                                   
'*******************************************************************

Imports Bytescout.PDF

''' <summary>
''' This example demonstrates how to add page numbers (labels) visible in the page thumbnails panel of PDF viewer.
''' </summary>
Class Program

    Shared Sub Main()

        ' Create new document
        Dim pdfDocument = New Document()
        pdfDocument.RegistrationName = "demo"
		pdfDocument.RegistrationKey = "demo"
        
        ' Add twenty pages
        For i As Integer = 0 To 19
            pdfDocument.Pages.Add(New Page(PaperFormat.A4))
        Next

        ' First five pages will have roman numbers I, II, III, ...
        Dim 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 document in default PDF viewer app
        Process.Start("result.pdf")

    End Sub

End Class 

Program.cs:
C#

//*******************************************************************
//       ByteScout PDF SDK		                                     
//                                                                   
//       Copyright © 2016 ByteScout - https://bytescout.com       
//       ALL RIGHTS RESERVED                                         
//                                                                   
//*******************************************************************

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 document in default PDF viewer app
			Process.Start("result.pdf");
		}
	}
} 

Tutorials:

prev
next