超鏈接可以實現(xiàn)不同元素之間的連接,用戶可以通過點擊被鏈接的元素來激活這些鏈接。具有高效、快捷、準(zhǔn)確的特點。本文中,將分享通過C#編程在PDF文檔中插入超鏈接的方法。內(nèi)容包含以下要點:
為南關(guān)等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及南關(guān)網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站建設(shè)、做網(wǎng)站、南關(guān)網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
下載安裝后,注意將Spire.Pdf.dll引用到程序(dll文件可在安裝路徑下的Bin文件夾中獲?。?br/>
using Spire.Pdf;
using Spire.Pdf.Annotations;
using Spire.Pdf.Graphics;
using System.Drawing;
namespace Weblink
{
class Program
{
static void Main(string[] args)
{
//創(chuàng)建PDF文檔并添加一頁
PdfDocument pdf = new PdfDocument();
PdfPageBase page = pdf.Pages.Add();
//定義坐標(biāo)變量并賦初值
float x = 10;
float y = 50;
//創(chuàng)建字體1
PdfTrueTypeFont font1 = new PdfTrueTypeFont(new Font("Arial Unicode MS", 12f, FontStyle.Regular), true);
//添加文本到頁面
string text = "注:\n本文主要數(shù)據(jù)來源參考自WTO,查看原文請點擊:";
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;
//創(chuàng)建字體2
PdfTrueTypeFont font2 = new PdfTrueTypeFont(new Font("Arial Unicode MS", 12f, FontStyle.Underline), true);
//創(chuàng)建PdfTextWebLink對象
PdfTextWebLink webLink = new PdfTextWebLink();
//設(shè)置超鏈接地址
webLink.Url = "https://www.wto.org/";
//設(shè)置超鏈接文本
webLink.Text = "WTO Official Website";
//設(shè)置超鏈接字體和字體顏色
webLink.Font = font2;
webLink.Brush = PdfBrushes.Blue;
//添加超鏈接到頁面
webLink.DrawTextWebLink(page.Canvas, new PointF(x, y+15));
//保存文檔
pdf.SaveToFile("WebLink.pdf");
System.Diagnostics.Process.Start("Weblink.pdf");
}
}
}
網(wǎng)頁鏈接效果:
using Spire.Pdf;
using Spire.Pdf.Annotations;
using Spire.Pdf.Graphics;
using System.Drawing;
namespace Filelink
{
class Program
{
static void Main(string[] args)
{
//創(chuàng)建PDF文檔并添加一頁
PdfDocument document = new PdfDocument();
PdfPageBase page = document.Pages.Add();
//創(chuàng)建字體
PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Arial Unicode MS", 15f, FontStyle.Regular), true);
string text = "Clik and View the Original Document";
//創(chuàng)建RectangleF對象并添加文本
RectangleF rectangle = new RectangleF(20, 40, 300,40);
page.Canvas.DrawString(text, font, PdfBrushes.SteelBlue, rectangle);
//創(chuàng)建PdfFileLinkAnnotation對象
PdfFileLinkAnnotation fileLink = new PdfFileLinkAnnotation(rectangle, @"sample.docx");
//設(shè)置超鏈接邊框顏色
fileLink.Color = Color.White;
//添加超鏈接到頁面
page.AnnotationsWidget.Add(fileLink);
//保存并打開文檔
document.SaveToFile("ExternalFileLink.pdf");
System.Diagnostics.Process.Start("ExternalFileLink.pdf");
}
}
}
外部文檔連接效果:
using Spire.Pdf;
using Spire.Pdf.Annotations;
using Spire.Pdf.General;
using Spire.Pdf.Graphics;
using System.Drawing;
namespace Documentlink
{
class Program
{
static void Main(string[] args)
{
//創(chuàng)建PDF文檔并添加3頁
PdfDocument pdf = new PdfDocument();
PdfPageBase page1 = pdf.Pages.Add();
PdfPageBase page2 = pdf.Pages.Add();
PdfPageBase page3 = pdf.Pages.Add();
//創(chuàng)建字體
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));
page3.Canvas.DrawString("(第三頁)", font, PdfBrushes.Black, new PointF(20, 20));
//創(chuàng)建超鏈接文本
string text = "點擊跳轉(zhuǎn)至最后一頁";
//創(chuàng)建RectangleF對象并添加文本
RectangleF rectangle = new RectangleF(40, 50, 900, 20);
page1.Canvas.DrawString(text, font, PdfBrushes.SteelBlue, rectangle);
//創(chuàng)建PdfDocumentLinkAnnotation對象
PdfDocumentLinkAnnotation documentLink = new PdfDocumentLinkAnnotation(rectangle, new PdfDestination(page3));
//設(shè)置邊框顏色
documentLink.Color = Color.White;
//添加超鏈接到第一頁
page1.AnnotationsWidget.Add(documentLink);
//保存文檔
pdf.SaveToFile("InternalFileLink.pdf");
System.Diagnostics.Process.Start("InternalFileLink.pdf");
}
}
}
頁面跳轉(zhuǎn)鏈接效果:
(本文完)
轉(zhuǎn)載請注明出處。