C# 給PDF文件設定過期時間

Mia張發表於2022-01-20

我們可以給一些重要文件或者臨時檔案設定過期時間和過期資訊提示來提醒讀者或管理者文件的時效性,並及時對文件進行調整、更新等。下面,分享通過C#程式程式碼來給PDF文件設定過期時間的方法。

引入dll程式集

【方法1】通過 NuGet 安裝。

  • 可以在Visual Studio中開啟“解決方案資源管理器”,滑鼠右鍵點選“引用”,“管理NuGet包”,然後搜尋“Free Spire.PDF”,點選“安裝”。
  • 也可以將以下內容複製到PM控制檯安裝:

          Install-Package FreeSpire.PDF -Version 7.8.9

【方法2】手動安裝。

可通過手動下載 Free Spire.PDF for .NET 包,然後解壓,找到BIN資料夾下的Spire.Pdf.dll。在Visual Studio中開啟“解決方案資源管理器”,滑鼠右鍵點選“引用”,“新增引用”,將本地路徑BIN資料夾下的dll檔案新增引用至程式。

 

新增過期時間

給PDF文件新增過期時間,主要通過以下幾個步驟來完成:

  • 建立PdfDocument類的物件,並通過PdfDocument.LoadFromFile(string filename)方法載入PDF文件。
  • 通過JavaScript語句設定過期時間,過期警告資訊並關閉文件等動作。
  • 初始化PdfJavaScriptAction類的例項,並通過PdfDocument.AfterOpenAction屬性設定PDF開啟後執行JS語句命令。
  • 最後,通過PdfDocument.SaveToFile(string filename, FileFormat fileFormat)方法儲存PDF文件到指定路徑。

C#

using Spire.Pdf;
using Spire.Pdf.Actions;

namespace SetExpiryDate
{
    class Program
    {
        static void Main(string[] args)
        {
            //建立PdfDocument類的物件,並載入PDF文件
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("test.pdf");

            //通過JavaScript設定過期時間,過期警告資訊並關閉文件
            string javaScript = "var rightNow = new Date();"
                    + "var endDate = new Date('June 20, 2021 23:59:59');"
                    + "if(rightNow.getTime() > endDate) {"
                    + "app.alert('該文件已過期。請聯絡管理人員獲取最新文件!',1);"
                    + "this.closeDoc(); }";

            //根據JS建立PdfJavaScriptAction 
            PdfJavaScriptAction js = new PdfJavaScriptAction(javaScript);

            //將PdfJavaScriptAction設定為文件開啟後的動作
            pdf.AfterOpenAction = js;

            //儲存文件
            pdf.SaveToFile("SetExpiryDate.pdf", FileFormat.PDF);
        }
    }
}

VB.NET

Imports Spire.Pdf
Imports Spire.Pdf.Actions

Namespace SetExpiryDate
    Class Program
        Private Shared Sub Main(args As String())
            '建立PdfDocument類的物件,並載入PDF文件
            Dim pdf As New PdfDocument()
            pdf.LoadFromFile("test.pdf")

            '通過JavaScript設定過期時間,過期警告資訊並關閉文件
            Dim javaScript As String = "var rightNow = new Date();" + "var endDate = new Date('June 20, 2021 23:59:59');" + "if(rightNow.getTime() > endDate) {" + "app.alert('該文件已過期。請聯絡管理人員獲取最新文件!',1);" + "this.closeDoc(); }"

            '根據JS建立PdfJavaScriptAction 
            Dim js As New PdfJavaScriptAction(javaScript)

            '將PdfJavaScriptAction設定為文件開啟後的動作
            pdf.AfterOpenAction = js

            '儲存文件
            pdf.SaveToFile("SetExpiryDate.pdf", FileFormat.PDF)
        End Sub
    End Class
End Namespace

文件設定效果如圖:

 

 

— End —

 

相關文章