提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2019-11-18 09:51:12.950|阅读 879 次
概述:Aspose.Cells允许您即时添加书签。PDF书签可以大大改善长文档的可浏览性。将书签链接添加到PDF文档时,可以精确控制所需的确切视图,而不仅限于链接到页面。本文将为大家介绍如何将Excel转换为PDF是插入PDF书签以及带有目的地名称的PDF书签。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Aspose.Cells for .NET是Excel电子表格编程API,可加快电子表格管理和处理任务,支持构建具有生成,修改,转换,呈现和打印电子表格功能的跨平台应用程序。
在接下来的系列教程中,将为开发者带来Aspose.Cells for .NET的一系列使用教程,例如关于加载保存转换、字体、渲染、绘图、智能标记等等。本文将为大家介绍如何将Excel转换为PDF是插入PDF书签以及带有目的地名称的PDF书签。
*正版优惠进行时,满额送豪礼,想要购买Aspose正版授权的朋友可以哦~
Aspose.Cells允许您即时添加书签。PDF书签可以大大改善长文档的可浏览性。将书签链接添加到PDF文档时,可以精确控制所需的确切视图,而不仅限于链接到页面。同时可以通过定位目标页面来设置精确视图,然后创建书签。
请查看以下示例代码,以了解如何添加PDF书签。该代码生成一个简单的工作簿,指定带有目标位置的PDF书签,并生成PDF文件。
// 文档目录的路径。 string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); //创建目录(如果尚不存在)。 bool IsExists = System.IO.Directory.Exists(dataDir); if (!IsExists) System.IO.Directory.CreateDirectory(dataDir); //实例化一个新的工作簿 Workbook workbook = new Workbook(); //获取第一个(默认)工作表中的单元格 Cells cells = workbook.Worksheets[0].Cells; //获取A1单元格 Aspose.Cells.Cell p = cells["A1"]; //输入一个值 p.PutValue("Preface"); //获取A10单元格 Aspose.Cells.Cell A = cells["A10"]; //输入一个值。 A.PutValue("page1"); //获取H15单元格 Aspose.Cells.Cell D = cells["H15"]; //输入一个值 D.PutValue("page1(H15)"); //将新工作表添加到工作簿 workbook.Worksheets.Add(); //获取第二张表中的单元格 cells = workbook.Worksheets[1].Cells; //在第二张工作表中获取B10单元格 Aspose.Cells.Cell B = cells["B10"]; //输入一个值 B.PutValue("page2"); //将新工作表添加到工作簿 workbook.Worksheets.Add(); //获取第三张表格中的单元格 cells = workbook.Worksheets[2].Cells; //在第三张表格中获取C10单元格 Aspose.Cells.Cell C = cells["C10"]; //输入一个值 C.PutValue("page3"); //创建一个主要的PDF书签输入对象 Aspose.Cells.Rendering.PdfBookmarkEntry pbeRoot = new Aspose.Cells.Rendering.PdfBookmarkEntry(); // 指定其文字 pbeRoot.Text = "Sections"; //设置目标单元格/位置 pbeRoot.Destination = p; //设置其子条目数组列表 pbeRoot.SubEntry = new ArrayList(); //创建子PDF书签条目对象 Aspose.Cells.Rendering.PdfBookmarkEntry subPbe1 = new Aspose.Cells.Rendering.PdfBookmarkEntry(); //指定其文字 subPbe1.Text = "Section 1"; //设置其目标单元格 subPbe1.Destination = A; // 定义/创建“ A节”的子书签条目对象 Aspose.Cells.Rendering.PdfBookmarkEntry ssubPbe = new Aspose.Cells.Rendering.PdfBookmarkEntry(); //指定其文字 ssubPbe.Text = "Section 1.1"; //设置目的地 ssubPbe.Destination = D; //创建/设置其子条目数组列表对象 subPbe1.SubEntry = new ArrayList(); //将对象添加到“第1节” subPbe1.SubEntry.Add(ssubPbe); // 将对象添加到主PDF根对象 pbeRoot.SubEntry.Add(subPbe1); //创建子PDF书签条目对象 Aspose.Cells.Rendering.PdfBookmarkEntry subPbe2 = new Aspose.Cells.Rendering.PdfBookmarkEntry(); //指定其文字 subPbe2.Text = "Section 2"; //设置目的地 subPbe2.Destination = B; //将对象添加到主PDF根对象 pbeRoot.SubEntry.Add(subPbe2); // 创建子PDF书签条目对象 Aspose.Cells.Rendering.PdfBookmarkEntry subPbe3 = new Aspose.Cells.Rendering.PdfBookmarkEntry(); //指定其文字 subPbe3.Text = "Section 3"; //设置目的地 subPbe3.Destination = C; //将对象添加到主PDF根对象 pbeRoot.SubEntry.Add(subPbe3); //创建一个PdfSaveOptions实例 Aspose.Cells.PdfSaveOptions pdfSaveOptions = new Aspose.Cells.PdfSaveOptions(); //设置PDF书签根对象 pdfSaveOptions.Bookmark = pbeRoot; dataDir = dataDir+ "PDFBookmarks_test.out.pdf"; //保存pdf文件 workbook.Save(dataDir, pdfSaveOptions);
命名目的地是PDF中不依赖于PDF页面的特殊种类的书签或链接。这意味着,如果添加页面或从PDF中删除页面,书签可能会变得无效,但命名的目的地将保持不变。要创建命名目的地,请设置 PdfBookmarkEntry.DestinationName属性。
请参阅以下示例代码,其源Excel文件和其输出PDF文件。屏幕截图显示了输出PDF内的书签和命名的目的地。该屏幕快照还描述了如何查看命名目的地以及您需要Acrobat Reader Professional版本。
//加载源Excel文件 Workbook wb = new Workbook(sourceDir + "samplePdfBookmarkEntry_DestinationName.xlsx"); //访问第一个工作表 Worksheet ws = wb.Worksheets[0]; //访问单元格C5 Cell cell = ws.Cells["C5"]; //为此单元格创建书签和目标 PdfBookmarkEntry bookmarkEntry = new PdfBookmarkEntry(); bookmarkEntry.Text = "Text"; bookmarkEntry.Destination = cell; bookmarkEntry.DestinationName = "AsposeCells--" + cell.Name; //存取单元格G56 cell = ws.Cells["G56"]; //为此单元格创建子书签和目标 PdfBookmarkEntry subbookmarkEntry1 = new PdfBookmarkEntry(); subbookmarkEntry1.Text = "Text1"; subbookmarkEntry1.Destination = cell; subbookmarkEntry1.DestinationName = "AsposeCells--" + cell.Name; //访问单元格L4 cell = ws.Cells["L4"]; //为此单元格创建子书签和目标 PdfBookmarkEntry subbookmarkEntry2 = new PdfBookmarkEntry(); subbookmarkEntry2.Text = "Text2"; subbookmarkEntry2.Destination = cell; subbookmarkEntry2.DestinationName = "AsposeCells--" + cell.Name; //在列表中添加子书签 ArrayList list = new ArrayList(); list.Add(subbookmarkEntry1); list.Add(subbookmarkEntry2); //将子书签列表分配给书签子条目 bookmarkEntry.SubEntry = list; //创建PdfSaveOptions并为其分配书签 PdfSaveOptions opts = new PdfSaveOptions(); opts.Bookmark = bookmarkEntry; //使用给定的pdf保存选项以Pdf格式保存工作簿 wb.Save(outputDir + "outputPdfBookmarkEntry_DestinationName.pdf", opts);
如果您对Aspose有任何需求和疑难,记得扫描下方二维码告诉我们哦~
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@capbkgr.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢