C# PDF Page操作——设置页面切换按钮

简介: 概述在以下示例中,将介绍在PDF文档页面设置页面切换按钮的方法。示例中将页面切换按钮的添加分为了两种情况,一种是设置按钮跳转到首页、下页、上页或者最后一页,另一种是设置按钮跳转到指定页面。两种方法适应不同的程序设计需要,可自行选择合适的添加方法。

概述

在以下示例中,将介绍在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页面跳转按钮的方法,本文介绍到这里,希望文中的代码能给各位开发者提供一定参考价值。

如需转载,请注明出处。

感谢阅读!

目录
相关文章
|
7月前
|
C#
C# DEV 关于设置gridview 指定单元格字体为红色
C# DEV 关于设置gridview 指定单元格字体为红色
|
7月前
|
C#
C# DEV TextEdit 设置文本框只能输入数字(整数)
C# DEV TextEdit 设置文本框只能输入数字(整数)
|
7月前
|
数据采集 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPISDK设置软件触发模式(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPISDK设置软件触发模式(C#)
80 1
|
7月前
|
Java API Apache
使用 Apache PDFBox 操作PDF文件
Apache PDFBox库是一个开源的Java工具,专门用于处理PDF文档。它允许用户创建全新的PDF文件,编辑现有的PDF文档,以及从PDF文件中提取内容。此外,Apache PDFBox还提供了一些命令行实用工具。
617 6
|
7月前
|
存储 数据采集 数据处理
Baumer工业相机堡盟工业相机如何通过BGAPISDK设置相机的Bufferlist序列(C#)
Baumer工业相机堡盟工业相机如何通过BGAPISDK设置相机的Bufferlist序列(C#)
99 0
|
3月前
|
关系型数据库 数据库 PostgreSQL
在C#中获取与设置Windows的字符编码方式
通过以上步骤,你可以在Docker环境下有效地重启PostgreSQL服务。这对于维护数据库健康、应用更新或环境配置更改后确保数据库服务正常运行至关重要。根据你的具体需求和环境设置,选择合适的方法来执行重启操作。
20 0
|
7月前
|
存储 数据管理 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机本身的数据保存(CustomData)功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机本身的数据保存(CustomData)功能(C#)
68 0
|
7月前
|
编解码 监控 开发工具
Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置相机的图像剪切(ROI)功能(C#)
Baumer工业相机堡盟工业相机如何通过BGAPI SDK设置相机的图像剪切(ROI)功能(C#)
61 0
|
6月前
|
编解码 文字识别
印刷文字识别操作报错合集之在尝试将PDF文件转换为图片时出现了问题,具体的错误代码是415,该怎么处理
在使用印刷文字识别(OCR)服务时,可能会遇到各种错误。例如:1.Java异常、2.配置文件错误、3.服务未开通、4.HTTP错误码、5.权限问题(403 Forbidden)、6.调用拒绝(Refused)、7.智能纠错问题、8.图片质量或格式问题,以下是一些常见错误及其可能的原因和解决方案的合集。
|
6月前
|
XML Java 数据处理
视觉智能开放平台操作报错合集之pdf识别报503,是什么导致的
在使用视觉智能开放平台时,可能会遇到各种错误和问题。虽然具体的错误代码和消息会因平台而异,但以下是一些常见错误类型及其可能的原因和解决策略的概述,包括但不限于:1. 认证错误、2. 请求参数错误、3. 资源超限、4. 图像质量问题、5. 服务不可用、6. 模型不支持的场景、7. 网络连接问题,这有助于快速定位和解决问题。