雷火电竞-中国电竞赛事及体育赛事平台

歡迎來(lái)到入門(mén)教程網(wǎng)!

C#教程

當(dāng)前位置:主頁(yè) > 軟件編程 > C#教程 >

C# PDF Page操作設(shè)置頁(yè)面切換按鈕的方法

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C#教程|點(diǎn)擊:

概述

在以下示例中,將介紹在PDF文檔頁(yè)面設(shè)置頁(yè)面切換按鈕的方法。示例中將頁(yè)面切換按鈕的添加分為了兩種情況,一種是設(shè)置按鈕跳轉(zhuǎn)到首頁(yè)、下頁(yè)、上頁(yè)或者最后一頁(yè),另一種是設(shè)置按鈕跳轉(zhuǎn)到指定頁(yè)面。兩種方法適應(yīng)不同的程序設(shè)計(jì)需要,可自行選擇合適的添加方法。

說(shuō)明

這里的代碼示例需要使用類庫(kù)Spire.PDF for .NET,版本4.0 。在使用該類庫(kù)時(shí),在項(xiàng)目程序中引用Spire.Pdf.dll即可(dll文件在安裝路徑下的Bin文件中獲?。?/p>

如:

代碼操作示例(供參考)

1.跳轉(zhuǎn)至特定頁(yè)(首頁(yè)、下一頁(yè)、上一頁(yè)、最后一頁(yè))

【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)
 {
  //實(shí)例化PdfDocument類,加載PDF測(cè)試F文檔
  PdfDocument doc = new PdfDocument();
  doc.LoadFromFile("sample.pdf");
  //允許添加Form
  doc.AllowCreateForm = true;
  //獲取文檔最后一頁(yè)
  PdfPageBase lastPage = doc.Pages[doc.Pages.Count - 1];
  //在頁(yè)面指定位置添加指定大小的按鈕
  PdfButtonField button = new PdfButtonField(lastPage, "Click To Back ");
  button.Bounds = new RectangleF(lastPage.ActualSize.Width - 150, lastPage.ActualSize.Height - 400, 60, 20);
  //設(shè)置按鈕邊框顏色
  button.BorderStyle = PdfBorderStyle.Solid;
  button.BorderColor = new PdfRGBColor(Color.White);
  //設(shè)置按鈕背景色
  button.BackColor = Color.Azure;
  //設(shè)置按鈕提示語(yǔ) 
  button.ToolTip = "To the first page";
  //設(shè)置按鈕文字字體和顏色 
  PdfTrueTypeFont trueTypeFont = new PdfTrueTypeFont(new Font("Avant Garde", 9f), true);
  button.Font = trueTypeFont;
  button.ForeColor = Color.Black;
  //創(chuàng)建PdfNamedAction實(shí)例,在傳入的參數(shù)中選擇上一頁(yè)、下一頁(yè)、首頁(yè)或最后一頁(yè)
  PdfNamedAction namedAction = new PdfNamedAction(PdfActionDestination.FirstPage);
  //應(yīng)用動(dòng)作
  button.Actions.MouseDown = namedAction;
  //添加按鈕到文檔
  doc.Form.Fields.Add(button);
  //保存并打開(kāi)PDF文檔
  doc.SaveToFile("result.pdf", FileFormat.PDF);
  System.Diagnostics.Process.Start("result.pdf");
 }
 }
}

PS:這里的PdfNameAction類支持四種按鈕跳轉(zhuǎn)動(dòng)作

添加效果(截圖):

點(diǎn)擊文中的按鈕時(shí),即可跳轉(zhuǎn)至按鈕指向的頁(yè)面。

2.跳轉(zhuǎn)至指定頁(yè)面

【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)
 {
  //實(shí)例化PdfDocument類,加載PDF文檔
  PdfDocument doc = new PdfDocument();
  doc.LoadFromFile("sample.pdf");
  //允許添加Form
  doc.AllowCreateForm = true;
  //獲取最后一頁(yè)
  PdfPageBase lastPage = doc.Pages[doc.Pages.Count - 1];
  //在頁(yè)面指定位置添加按鈕
  PdfButtonField button = new PdfButtonField(lastPage, "Back");
  button.Bounds = new RectangleF(lastPage.ActualSize.Width - 150, lastPage.ActualSize.Height - 700, 50, 20);
  //設(shè)置按鈕邊框顏色
  button.BorderStyle = PdfBorderStyle.Solid;
  button.BorderColor = new PdfRGBColor(Color.Transparent);
  //設(shè)置按鈕背景色
  button.BackColor = Color.WhiteSmoke;
  //設(shè)置按鈕提示語(yǔ) 
  button.ToolTip = "Click and back to the third page";
  //設(shè)置按鈕文字字體和顏色 
  PdfTrueTypeFont trueTypeFont = new PdfTrueTypeFont(new Font("Avant Garde", 9f), true);
  button.Font = trueTypeFont;
  button.ForeColor = Color.Black;
  //實(shí)例化PdfDestination對(duì)象,傳入指定頁(yè)碼到第3頁(yè)
  PdfDestination destination = new PdfDestination(doc.Pages[2]);
  //創(chuàng)建go to動(dòng)作
  PdfGoToAction goToAction = new PdfGoToAction(destination);
  //應(yīng)用動(dòng)作
  button.Actions.MouseDown = goToAction;
  //添加按鈕到文檔
  doc.Form.Fields.Add(button);
  //保存并打開(kāi)PDF文檔
  doc.SaveToFile("result.pdf", FileFormat.PDF);
  System.Diagnostics.Process.Start("result.pdf");
 }
 }
}

添加效果(截圖):

點(diǎn)擊按鈕,即可跳轉(zhuǎn)至指定的文檔第3頁(yè)。

以上所述是小編給大家介紹的C# PDF Page操作設(shè)置頁(yè)面切換按鈕的方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)我們網(wǎng)站的支持!

上一篇:C#中IDispose接口的實(shí)現(xiàn)及為何這么實(shí)現(xiàn)詳解

欄    目:C#教程

下一篇:C# 數(shù)據(jù)庫(kù)鏈接字符串加密解密工具代碼詳解

本文標(biāo)題:C# PDF Page操作設(shè)置頁(yè)面切換按鈕的方法

本文地址:http://www.jygsgssxh.com/a1/C_jiaocheng/5184.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有