提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2019-07-24 09:41:09.720|阅读 1227 次
概述:Spire.PDF是一个专业的PDF组件,能够独立地创建、编写、编辑、操作和阅读PDF文件,支持 .NET、Java、WPF和Silverlight。书签不仅可以帮助我们跳转到文档中相应的位置,还可以让我们快速地了解文档所讲述的内容。本文将介绍如何添加删除PDF书签,获取多级书签。
#慧都22周年庆大促·界面/图表报表/文档/IDE/IOT/测试等千款热门软控件火热促销中>>
相关链接:
更多资源查看:Spire.XLS工作表教程 | Spire.Doc系列教程 | Spire.PDF系列教程
Spire.PDF是一个专业的PDF组件,能够独立地创建、编写、编辑、操作和阅读PDF文件,支持 .NET、Java、WPF和Silverlight。Spire.PDF的PDF API拥有丰富的功能,如安全设置(包括数字签名)、PDF文本/附件/图片提取、PDF文件合并/拆分、元数据更新、章节和段落优化、图形/图像描绘和插入、表格创建和处理、数据导入等等。
书签不仅可以帮助我们跳转到文档中相应的位置,还可以让我们快速地了解文档所讲述的内容。本文将介绍如何添加删除PDF书签,获取多级书签。
Spire.PDF不仅支持对简单书签的操作,还支持多级书签。接下来将介绍如何使用Spire.PDF来获取PDF文档中的多级书签。
static void Main(string[] args)
{
//加载含有多级书签的PDF文件
PdfDocument doc = new PdfDocument();
doc.LoadFromFile("示例.pdf");
//获取文档的书签
PdfBookmarkCollection bookmarks = doc.Bookmarks;
//声明一个可变字符串
StringBuilder stringbuilder = new StringBuilder();
//获取父书签和子书签
GetBookmarkTitle(bookmarks, stringbuilder);
//声明txt文件,并将获得的多级书签写入到文件.txt
String fileName = "D://文件.txt";
File.WriteAllText(fileName, stringbuilder.ToString());
Console.ReadLine();
}
static void GetBookmarkTitle(PdfBookmarkCollection bookmarks, StringBuilder stringbuilder)
{
if (bookmarks.Count > 0)
{
foreach (PdfBookmark parentBookmark in bookmarks)
{
stringbuilder.AppendLine(parentBookmark.Title);
//递归文档多级书签
GetBookmarkTitle(parentBookmark, stringbuilder);
}
}
}
添加书签
在Spire.PDF中,每个PDF文档都有一个书签列表(PdfBookmarkCollection)。我们可以通过PdfDocument对象的Bookmarks属性来获取该列表,然后通过Add () 方法将书签添加到列表中。
//新建PDF文档
PdfDocument pdf = new PdfDocument();
//添加页面
PdfPageBase page = pdf.Pages.Add();
//添加书签
PdfBookmark bookmark = pdf.Bookmarks.Add("第一页");
//设置书签所指向的页面和位置,(0,0)表示页面的开始位置
bookmark.Destination = new PdfDestination(page);
bookmark.Destination.Location = new PointF(0, 0);
//设置书签的文本格式和颜色
bookmark.DisplayStyle = PdfTextStyle.Bold;
bookmark.Color = Color.Black;
//保存文档
pdf.SaveToFile("Bookmark2.pdf");
添加子书签
//新建PDF文档
PdfDocument pdf = new PdfDocument();
//添加页面
PdfPageBase page = pdf.Pages.Add();
//添加书签
PdfBookmark bookmark = pdf.Bookmarks.Add("第一章 热传导");
//设置书签指向的页面和位置
bookmark.Destination = new PdfDestination(page);
bookmark.Destination.Location = new PointF(0, 0);
//设置书签的文本格式和颜色
bookmark.DisplayStyle = PdfTextStyle.Bold;
bookmark.Color = Color.SeaGreen;
//添加子书签
PdfBookmark childBookmark = bookmark.Insert(0, "1.1 热传导基本知识");
//设置子书签指向的页面和位置
childBookmark.Destination = new PdfDestination(page);
childBookmark.Destination.Location = new PointF(400, 300);
//设置子书签的文本格式和颜色
childBookmark.DisplayStyle = PdfTextStyle.Regular;
childBookmark.Color = Color.Black;
//保存文档
pdf.SaveToFile("ChildBookmark.pdf");
添加书签到现有文档
除了在新建的PDF文档里添加书签,我们还可以给现有的PDF文档添加书签。加载PDF文档的方法除LoadFromFile以外,还有LoadFromStream (从流加载),LoadFromHTML(从HTML加载)等,可根据自己的需求选择相应的加载方式。
//加载文档
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("示例.pdf");
for (int i = 0; i < pdf.Pages.Count; i++)
{
//添加书签
PdfBookmark bookmark = pdf.Bookmarks.Add(string.Format("第{0}章", i+1));
//设置书签指向的页面和位置
bookmark.Destination = new PdfDestination(pdf.Pages[i]);
bookmark.Destination.Location = new PointF(0, 0);
//设置书签的文本格式和颜色
bookmark.DisplayStyle = PdfTextStyle.Bold;
bookmark.Color = Color.Black;
}
//保存文档
pdf.SaveToFile("Bookmark2.pdf");
修改书签
Spire.PDF支持多种书签修改方式,例如修改现有书签的内容,插入新书签到现有书签列表,插入子书签到现有书签等。这里我们选取修改书签内容和插入新书签到现有书签列表进行介绍。
修改现有书签内容
//加载文档
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Bookmark2.pdf");
//获取书签列表
PdfBookmarkCollection bookmarks = pdf.Bookmarks;
//获取第一个书签
PdfBookmark bookmark = bookmarks[0];
//修改书签指向的页面
bookmark.Destination = new PdfDestination(document.Pages[1]);
//修改书签的文本格式和颜色
bookmark.DisplayStyle = PdfTextStyle.Bold;
bookmark.Color = Color.Green;
//修改书签的title
bookmark.Title = "修改";
//保存文档
pdf.SaveToFile("ModifyBookmark.pdf");
插入新书签到现有书签列表
//加载文档
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Bookmark2.pdf");
//插入新书签到指定位置
PdfBookmark bookmark = pdf.Bookmarks.Insert(2, "新增第三章");
//设置书签所指向的页面和位置
bookmark.Destination = new PdfDestination(document.Pages[1]);
bookmark.Destination.Location = new PointF(0, 300);
//保存文档
pdf.SaveToFile("InsertBookmark.pdf");
删除书签
删除书签时,可以使用书签的序号,也可以使用书签的名称。这里所使用的是序号的方式。
//加载文档
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile("Bookmark2.pdf");
//获取所有书签
PdfBookmarkCollection bookmarks = document.Bookmarks;
//删除第一个书签
bookmarks.RemoveAt(0);
//保存文档
pdf.SaveToFile("DeleteBookmark.pdf");
如果你有任何问题或意见,可在下方评论区留言,点击资源列表查看更多教程资源~
*想要购买正版授权的朋友可以哦~
扫描关注“慧聚IT”微信公众号,及时获取更多产品最新动态及最新资讯

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@hmdbvip.cn
文章转载自:



如果能将 CSV 自动转换为 PDF ,就能快速生成清晰、美观的报表,既节省手动排版时间,又能保持数据的专业呈现。本文将介绍如何使用 Spire.XLS for Java 实现这一过程——从加载 CSV 到输出高质量 PDF,仅需数行代码即可完成。
Parasoft C/C++test是一款专为C/C++代码设计的自动化测试工具,通过静态代码分析、单元测试和运行时错误检测等功能,帮助开发团队在早期发现并修复缺陷,提升代码质量和开发效率 。在实际使用中,尤其是在VC6此类旧版开发环境中执行单元测试时,可能会因环境兼容性问题触发链接错误。
本文主要介绍如何在MVVM应用程序中使用虚拟源,欢迎下载最新版组件体验!
Aspose.Slides for Java使用户能够轻松地操作幻灯片、添加注释和转换文件。其易用性和集成能力提高了工作效率,使开发人员能够专注于更关键的任务。
相关产品
Spire.PDF for .NET是独立的PDF控件,用于.NET程序中创建、编辑和操作PDF文档
最新文章 MORE
永利最大(官方)网站相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@hmdbvip.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
永利最大(官方)网站