The example demonstrates how to create a navigation link to a page using ByteScout PDF SDK.
Program.vb:
VB
'*******************************************************************
' ByteScout PDF SDK
'
' Copyright © 2016 Bytescout, https://bytescout.com
' ALL RIGHTS RESERVED
'
'*******************************************************************
Imports System.Drawing
Imports Bytescout.PDF
''' <summary>
''' This example demonstrates how to create a navigation link to a page.
''' </summary>
Class Program
Shared Sub Main()
' Create new document
Dim pdfDocument = New Document()
pdfDocument.RegistrationName = "demo"
pdfDocument.RegistrationKey = "demo"
' Add two pages
Dim page1 = New Page(PaperFormat.A4)
pdfDocument.Pages.Add(page1)
Dim page2 = New Page(PaperFormat.A4)
pdfDocument.Pages.Add(page2)
Dim font = New Bytescout.PDF.Font(StandardFonts.Times, 12)
Dim brush = New Bytescout.PDF.SolidBrush()
' Create link annotation pointing to Page 2, 200 Points from the top.
Dim destination = New Destination(page2, 200)
Dim link = New LinkAnnotation(destination, 20, 20, 100, 25)
link.Color = New ColorRGB(255, 0, 0) ' you can change the link color
page1.Annotations.Add(link)
' Draw link text (optional)
page1.Canvas.DrawString("Link to Page 2", font, brush, New RectangleF(20, 20, 100, 25),
New Bytescout.PDF.StringFormat() With {.HorizontalAlign = HorizontalAlign.Center, .VerticalAlign = VerticalAlign.Center})
' Draw a text at the link target
page2.Canvas.DrawString("Link target", font, brush, 20, 200)
' 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 System.Drawing;
using Bytescout.PDF;
using Brush = Bytescout.PDF.Brush;
using Font = Bytescout.PDF.Font;
using SolidBrush = Bytescout.PDF.SolidBrush;
using StringFormat = Bytescout.PDF.StringFormat;
namespace LinkToPage
{
/// <summary>
/// This example demonstrates how to create a navigation link to a page.
/// </summary>
class Program
{
static void Main()
{
// Create new document
Document pdfDocument = new Document();
pdfDocument.RegistrationName = "demo";
pdfDocument.RegistrationKey = "demo";
// Add two 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, 12);
Brush brush = new SolidBrush();
// Create link annotation pointing to Page 2, 200 Points from the top.
Destination destination = new Destination(page2, 200);
LinkAnnotation link = new LinkAnnotation(destination, 20, 20, 100, 25);
link.Color = new ColorRGB(255, 0, 0); // you can change the link color
page1.Annotations.Add(link);
// Draw link text (optional)
page1.Canvas.DrawString("Link to Page 2", font, brush, new RectangleF(20, 20, 100, 25),
new StringFormat {HorizontalAlign = HorizontalAlign.Center, VerticalAlign = VerticalAlign.Center});
// Draw a text at the link target
page2.Canvas.DrawString("Link target", font, brush, 20, 200);
// Save document to file
pdfDocument.Save("result.pdf");
// Cleanup
pdfDocument.Dispose();
// Open document in default PDF viewer app
Process.Start("result.pdf");
}
}
}