How to create a button with GoTo action using ByteScout PDF SDK

  • Home
  • /
  • Articles
  • /
  • How to create a button with GoTo action using ByteScout PDF SDK

The example demonstrates how to create a button with GoTo action using ByteScout PDF SDK.

Program.vb:

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

Imports Bytescout.PDF

''' <summary>
''' This example demonstrates how to create a button with GoTo action.
''' </summary>
Class Program

    Shared Sub Main()

        ' Create new document
        Dim pdfDocument = New Document()
        pdfDocument.RegistrationName = "demo"
		pdfDocument.RegistrationKey = "demo"

        ' Add pages
        Dim page1 = New Page(PaperFormat.A4)
        pdfDocument.Pages.Add(page1)
        Dim page2 = New Page(PaperFormat.A4)
        pdfDocument.Pages.Add(page2)

        Dim font = New Font(StandardFonts.Times, 18)
        Dim brush = New SolidBrush()

        ' Mark action target with text
        page2.Canvas.DrawString("Action target", font, brush, 20, 200)

        ' Create button
        Dim button = New PushButton(20, 20, 100, 25, "button1")
        button.Caption = "Go To Page 2"
        ' Create action to go to page 2 at 200 points from the top
        button.OnActivated = New GoToAction(New Destination(page2, 200))

        page1.Annotations.Add(button)

        ' 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:

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

using System.Diagnostics;
using Bytescout.PDF;

namespace GoToActionExample
{
	/// <summary>
	/// This example demonstrates how to create a button with GoTo action.
	/// </summary>
	class Program
	{
		static void Main()
		{
			// Create new document
			Document pdfDocument = new Document();
			pdfDocument.RegistrationName = "demo";
			pdfDocument.RegistrationKey = "demo";

			// Add pages
			Page page1 = new Page(PaperFormat.A4);
			pdfDocument.Pages.Add(page1);
			Page page2 = new Page(PaperFormat.A4);
			pdfDocument.Pages.Add(page2);
			
			Font font = new Font(StandardFonts.Times, 18);
			Brush brush = new SolidBrush();
			
			// Mark action target with text
			page2.Canvas.DrawString("Action target", font, brush, 20, 200);
			
			// Create button
			PushButton button = new PushButton(20, 20, 100, 25, "button1");
			button.Caption = "Go To Page 2";
			// Create action to go to page 2 at 200 points from the top
			button.OnActivated = new GoToAction(new Destination(page2, 200));
			
			page1.Annotations.Add(button);
			
			// Save document to file
			pdfDocument.Save("result.pdf");

			// Cleanup 
			pdfDocument.Dispose();

			// Open document in default PDF viewer app
			Process.Start("result.pdf");
		}
	}
}
prev
next