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("arial unicode ms", 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("arial unicode ms", 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("arial unicode ms", 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("arial unicode ms", 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("arial unicode ms", 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("arial unicode ms", 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("arial unicode ms", 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("arial unicode ms", 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")