Spire.PDF允许用户在PDF文档中添加超链接来链接到外部网页、文档内部的指定页面或是某些外部文档。以下示例将介绍如何使用Spire.PDF组件和C#添加这三种超链接到PDF文档。
链接到外部网页
C#
//创建PDF文档并添加一页
PdfDocument pdf = new PdfDocument();
PdfPageBase page = pdf.Pages.Add();
//定义坐标变量并赋初值
float x = 10;
float y = 50;
//创建字体
PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("宋体", 12f, FontStyle.Regular), true);
//添加文本到页面
string text = "更多详情请访问E-iceblue官方网站: ";
page.Canvas.DrawString(text, font1, PdfBrushes.Black, new PointF(x, y));
PdfStringFormat format = new PdfStringFormat();
format.MeasureTrailingSpaces = true;
x = x + font1.MeasureString(text, format).Width;
//创建字体
PdfTrueTypeFont font2 = new PdfTrueTypeFont(new Font("宋体", 12f, FontStyle.Underline), true);
//创建PdfTextWebLink对象
PdfTextWebLink webLink = new PdfTextWebLink();
//设置超链接地址
webLink.Url = "https://www.e-iceblue.cn/";
//设置超链接文本
webLink.Text = "www.e-iceblue.cn";
//设置超链接字体和字体颜色
webLink.Font = font2;
webLink.Brush = PdfBrushes.Blue;
//添加超链接到页面
webLink.DrawTextWebLink(page.Canvas, new PointF(x, y));
//保存文档
pdf.SaveToFile("WebLink.pdf");
VB.NET
'创建PDF文档并添加一页
Dim pdf As New PdfDocument()
Dim page As PdfPageBase = pdf.Pages.Add()
'定义坐标变量并赋初值
Dim x As Single = 10
Dim y As Single = 50
'创建字体
Dim font1 As New PdfTrueTypeFont(New Font("宋体", 12F, FontStyle.Regular), True)
'添加文本到页面
Dim text As String = "更多详情请访问E-iceblue官方网站: "
page.Canvas.DrawString(text, font1, PdfBrushes.Black, New PointF(x, y))
Dim format As New PdfStringFormat()
format.MeasureTrailingSpaces = True
x = x + font1.MeasureString(text, format).Width
'创建字体
Dim font2 As New PdfTrueTypeFont(New Font("宋体", 12F, FontStyle.Underline), True)
'创建PdfTextWebLink对象
Dim webLink As New PdfTextWebLink()
'设置超链接地址
webLink.Url = "https://www.e-iceblue.cn/"
'设置超链接文本
webLink.Text = "www.e-iceblue.cn"
'设置超链接字体和字体颜色
webLink.Font = font2
webLink.Brush = PdfBrushes.Blue
'添加超链接到页面
webLink.DrawTextWebLink(page.Canvas, New PointF(x, y))
'保存文档
pdf.SaveToFile("WebLink.pdf")
链接到文档内部的指定页面
C#
//创建PDF文档并添加两页
PdfDocument pdf = new PdfDocument();
PdfPageBase page1 = pdf.Pages.Add();
PdfPageBase page2 = pdf.Pages.Add();
//创建字体
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("宋体", 12f, FontStyle.Regular), true);
//添加文本到页面
page1.Canvas.DrawString("第一页", font, PdfBrushes.Black, new PointF(20, 20));
page2.Canvas.DrawString("第二页", font, PdfBrushes.Black, new PointF(20, 20));
string text = "跳转到第二页";
//创建RectangleF对象并添加文本
RectangleF rectangle = new RectangleF(20, 80, 70, 20);
page1.Canvas.DrawString(text, font, PdfBrushes.ForestGreen, rectangle);
//创建PdfDocumentLinkAnnotation对象
PdfDocumentLinkAnnotation documentLink = new PdfDocumentLinkAnnotation(rectangle, new PdfDestination(page2));
//设置边框颜色
documentLink.Color = Color.DarkSeaGreen;
//添加超链接到第一页
page1.AnnotationsWidget.Add(documentLink);
//保存文档
pdf.SaveToFile("InternalFileLink.pdf");
VB.NET
'创建PDF文档并添加两页
Dim pdf As New PdfDocument()
Dim page1 As PdfPageBase = pdf.Pages.Add()
Dim page2 As PdfPageBase = pdf.Pages.Add()
'创建字体
Dim font As New PdfTrueTypeFont(New Font("宋体", 12F, FontStyle.Regular), True)
'添加文本到页面
page1.Canvas.DrawString("第一页", font, PdfBrushes.Black, New PointF(20, 20))
page2.Canvas.DrawString("第二页", font, PdfBrushes.Black, New PointF(20, 20))
Dim text As String = "跳转到第二页"
'创建RectangleF对象并添加文本
Dim rectangle As New RectangleF(20, 80, 70, 20)
page1.Canvas.DrawString(text, font, PdfBrushes.ForestGreen, rectangle)
'创建PdfDocumentLinkAnnotation对象
Dim documentLink As New PdfDocumentLinkAnnotation(rectangle, New PdfDestination(page2))
'设置边框颜色
documentLink.Color = Color.DarkSeaGreen
'添加超链接到第一页
page1.AnnotationsWidget.Add(documentLink)
'保存文档
pdf.SaveToFile("InternalFileLink.pdf")/code>
链接到外部文档
C#
//创建PDF文档并添加一页
PdfDocument document = new PdfDocument();
PdfPageBase page = document.Pages.Add();
//创建字体
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("宋体", 12f, FontStyle.Regular), true);
string text = "打开1.jpg";
//创建RectangleF对象并添加文本
RectangleF rectangle = new RectangleF(20, 40, 80, 20);
page.Canvas.DrawString(text, font, PdfBrushes.ForestGreen, rectangle);
//创建PdfFileLinkAnnotation对象
PdfFileLinkAnnotation fileLink = new PdfFileLinkAnnotation(rectangle, @"1.jpg");
//设置超链接边框颜色
fileLink.Color = Color.DarkSeaGreen;
//添加超链接到页面
page.AnnotationsWidget.Add(fileLink);
//保存文档
document.SaveToFile("ExternalFileLink.pdf");
VB.NET
'创建PDF文档并添加一页
Dim document As New PdfDocument()
Dim page As PdfPageBase = document.Pages.Add()
'创建字体
Dim font As New PdfTrueTypeFont(New Font("宋体", 12F, FontStyle.Regular), True)
Dim text As String = "打开1.jpg"
'创建RectangleF对象并添加文本
Dim rectangle As New RectangleF(20, 40, 80, 20)
page.Canvas.DrawString(text, font, PdfBrushes.ForestGreen, rectangle)
'创建PdfFileLinkAnnotation对象
Dim fileLink As New PdfFileLinkAnnotation(rectangle, "1.jpg")
'设置超链接边框颜色
fileLink.Color = Color.DarkSeaGreen
'添加超链接到页面
page.AnnotationsWidget.Add(fileLink)
'保存文档
document.SaveToFile("ExternalFileLink.pdf")