C# PDF Page操作——设置页面切换按钮
概述
在以下示例中,将介绍在PDF文档页面设置页面切换按钮的方法。示例中将页面切换按钮的添加分为了两种情况,一种是设置按钮跳转到首页、下页、上页或者最后一页,另一种是设置按钮跳转到指定页面。两种方法适应不同的程序设计需要,可自行选择合适的添加方法。
说明
这里的代码示例需要使用类库Spire.PDF for .NET,版本4.0 。在使用该类库时,在项目程序中引用Spire.Pdf.dll即可(dll文件在安装路径下的Bin文件中获取)。
如:
代码操作示例(供参考)
1.跳转至特定页(首页、下一页、上一页、最后一页)
【C#】
using Spire.Pdf; using Spire.Pdf.Actions; using Spire.Pdf.Fields; using Spire.Pdf.Graphics; using System.Drawing; namespace ButtonToAppointedPage_PDF { class Program { static void Main(string[] args) { //实例化PdfDocument类,加载PDF测试F文档 PdfDocument doc = new PdfDocument(); doc.LoadFromFile("sample.pdf"); //允许添加Form doc.AllowCreateForm = true; //获取文档最后一页 PdfPageBase lastPage = doc.Pages[doc.Pages.Count - 1]; //在页面指定位置添加指定大小的按钮 PdfButtonField button = new PdfButtonField(lastPage, "Click To Back "); button.Bounds = new RectangleF(lastPage.ActualSize.Width - 150, lastPage.ActualSize.Height - 400, 60, 20); //设置按钮边框颜色 button.BorderStyle = PdfBorderStyle.Solid; button.BorderColor = new PdfRGBColor(Color.White); //设置按钮背景色 button.BackColor = Color.Azure; //设置按钮提示语 button.ToolTip = "To the first page"; //设置按钮文字字体和颜色 PdfTrueTypeFont trueTypeFont = new PdfTrueTypeFont(new Font("Avant Garde", 9f), true); button.Font = trueTypeFont; button.ForeColor = Color.Black; //创建PdfNamedAction实例,在传入的参数中选择上一页、下一页、首页或最后一页 PdfNamedAction namedAction = new PdfNamedAction(PdfActionDestination.FirstPage); //应用动作 button.Actions.MouseDown = namedAction; //添加按钮到文档 doc.Form.Fields.Add(button); //保存并打开PDF文档 doc.SaveToFile("result.pdf", FileFormat.PDF); System.Diagnostics.Process.Start("result.pdf"); } } }
PS:这里的PdfNameAction类支持四种按钮跳转动作
添加效果(截图):
点击文中的按钮时,即可跳转至按钮指向的页面。
2.跳转至指定页面
【C#】
using Spire.Pdf; using Spire.Pdf.Actions; using Spire.Pdf.Fields; using Spire.Pdf.General; using Spire.Pdf.Graphics; using System.Drawing; namespace Buttom2 { class Program { static void Main(string[] args) { //实例化PdfDocument类,加载PDF文档 PdfDocument doc = new PdfDocument(); doc.LoadFromFile("sample.pdf"); //允许添加Form doc.AllowCreateForm = true; //获取最后一页 PdfPageBase lastPage = doc.Pages[doc.Pages.Count - 1]; //在页面指定位置添加按钮 PdfButtonField button = new PdfButtonField(lastPage, "Back"); button.Bounds = new RectangleF(lastPage.ActualSize.Width - 150, lastPage.ActualSize.Height - 700, 50, 20); //设置按钮边框颜色 button.BorderStyle = PdfBorderStyle.Solid; button.BorderColor = new PdfRGBColor(Color.Transparent); //设置按钮背景色 button.BackColor = Color.WhiteSmoke; //设置按钮提示语 button.ToolTip = "Click and back to the third page"; //设置按钮文字字体和颜色 PdfTrueTypeFont trueTypeFont = new PdfTrueTypeFont(new Font("Avant Garde", 9f), true); button.Font = trueTypeFont; button.ForeColor = Color.Black; //实例化PdfDestination对象,传入指定页码到第3页 PdfDestination destination = new PdfDestination(doc.Pages[2]); //创建go to动作 PdfGoToAction goToAction = new PdfGoToAction(destination); //应用动作 button.Actions.MouseDown = goToAction; //添加按钮到文档 doc.Form.Fields.Add(button); //保存并打开PDF文档 doc.SaveToFile("result.pdf", FileFormat.PDF); System.Diagnostics.Process.Start("result.pdf"); } } }
添加效果(截图):
点击按钮,即可跳转至指定的文档第3页。
关于添加PDF页面跳转按钮的方法,本文介绍到这里,希望文中的代码能给各位开发者提供一定参考价值。
如需转载,请注明出处。
感谢阅读!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)