LEADTOOLS使用教程:如何在.NET中创建和提取PDF书签
当使用内容丰富的PDF文件时,PDF书签非常有用。添加书签可以为读者提供更好的用户体验。没有人愿意花时间在一页一页的文本中搜索特定的标题和子标题,这样他们就可以找到所需的内容。LEADTOOLS PDF SDK库为开发者提供了创建PDF书签和提取书签PDF格式信息的功能。
LEADTOOLS PDF SDK库包括LEADTOOLS PDF Pro、LEADTOOLS Document Imaging Suite Developer Toolkit、LEADTOOLS Medical Imaging Suite、LEADTOOLS PACS Imaging Developer Toolkit等产品。
LEADTOOLS PDFBookmark结构包含单个PDF书签的属性。文件中书签的集合是PDF目录的组成部分,并使读者易于浏览文档。
书签包含代表其外观的三个属性:
- Title:这是向用户显示的文本
- Level:书签的缩进级别。级别0是根书签,级别1是上一个书签的子级,级别2是该子级的子级,依此类推。
- BookmarkStyle:书签的字体样式
创建PDF书签
static void createBookmarks(string fileName)
{
PDFFile file = new PDFFile(fileName);
var bookmarks = new List<PDFBookmark>();
file.Load();
for (int i = 0; i < file.Pages.Count; i++)
{
PDFFilePage page = file.Pages[i];
PDFBookmark bookmark = new PDFBookmark();
bookmark.Title = "Goto page " + page.PageNumber.ToString();
bookmark.BookmarkStyle = PDFBookmarkStyle.Plain;
bookmark.Level = 2;
bookmark.TargetPageNumber = page.PageNumber;
bookmark.TargetPageFitType = PDFPageFitType.Default;
bookmark.TargetPosition = new PDFPoint(0, page.Height);
bookmark.TargetZoomPercent = 0;
bookmarks.Add(bookmark);
}
file.WriteBookmarks(bookmarks, pdfFile2);
Console.WriteLine("--- Created bookmarks ---" + Environment.NewLine);
}
提取PDF书签信息
要提取书签,您将需要使用PDFDocument.ParseDocumentStructure方法,然后访问PDFDocument.Bookmarks和PDFDocument.InternalLinks集合。
static void readBookmarks(string fileName)
{
using (PDFDocument document = new PDFDocument(fileName))
{
document.ParseDocumentStructure(PDFParseDocumentStructureOptions.Bookmarks);
Console.WriteLine($"{document.Bookmarks.Count} bookmarks found:");
foreach (PDFBookmark bookmark in document.Bookmarks)
{
Console.WriteLine($"Title: {bookmark.Title}, Level: {bookmark.Level}, Target page: {bookmark.TargetPageNumber}");
}
}
}
结论
要进行测试,可以下载我的c# . net控制台项目。如果您还没有下载LEADTOOLS软件请点击这里下载!
相关内容推荐:


QQ交谈
在线咨询

渝公网安备
50010702500608号

客服热线