在 C# .NET 中將 JavaScript 添加到 PDF 文件

PDF 在多功能性和功能方面是一種豐富的文檔格式。 PDF 的主要優勢之一是其跨異構平台的一致佈局。而且,它具有同時顯示在桌面應用程序和網絡瀏覽器中的能力。這就是 PDF 文件能夠運行 JavaScript 的原因。在本文中,我們將演示如何使用 C# 在 PDF 文件中添加或刪除 JavaScript。

用於在 PDF 中添加或刪除 JavaScript 的 C# .NET API

Aspose.PDF for .NET 旨在在 .NET 應用程序中執行 PDF 生成和操作。 API 讓您可以無縫地創建、處理和轉換簡單和復雜佈局的 PDF 文件。您可以 下載 API 的二進製文件或使用 NuGet 安裝它。

PM> Install-Package Aspose.PDF

在 C# 中將 JavaScript 添加到 PDF 文件

PDF 文件支持 Acrobat JavaScript,它基於 ISO-16262 的 JavaScript 1.5 版的核心,以前稱為 ECMAScript。它是由 Netscape Communications 開發的一種面向對象的腳本語言。在繼續將 JavaScript 添加到 PDF 文件之前,讓我們看一下 Acrobat JavaScript 和 Web 瀏覽器中使用的 HTML JavaScript 之間的區別。

  • Acrobat JavaScript 無法訪問 HTML 頁面中的對象。同樣,HTML JavaScript 無法訪問 PDF 文件中的對象。
  • HTML JavaScript 能夠操作諸如 Window 之類的對象。但是,Acrobat JavaScript 無法訪問這些特定對象,但它可以操作特定於 PDF 的對象。

以下是使用 C# 將 JavaScript 添加到 PDF 文件的步驟。

以下代碼示例顯示瞭如何將 JavaScript 添加到 PDF。

// 加載 PDF 文件
Document doc = new Document("input.pdf");

// 使用所需的 JavaScript 語句實例化 JavascriptAction
JavascriptAction javaScript = new JavascriptAction("this.print({bUI:true,bSilent:false,bShrinkToFit:true});");

// 將 JavascriptAction 對象分配給所需的文檔操作
doc.OpenAction = javaScript;

// 在頁面級別添加 JavaScript
doc.Pages[2].Actions.OnOpen = new JavascriptAction("app.alert('page 1 opened')");
doc.Pages[2].Actions.OnClose = new JavascriptAction("app.alert('page 1 closed')");

// 保存 PDF 文檔
doc.Save("output.pdf");

在 C# 中的 PDF 中添加文檔級 JavaScript

您還可以使用 Document.JavaScript 屬性將 JavaScript 添加到文檔級別。以下是在 C# 中將 JavaScript 添加到文檔級別的步驟。

以下代碼示例顯示瞭如何在 C# 中將 JavaScript 添加到 PDF。

// 加載或創建 PDF 文件
Document doc = new Document();

// 添加頁面
doc.Pages.Add();

// 添加文檔級 JavaScript
doc.JavaScript["func1"] = "function func1() { hello(); }";
doc.JavaScript["func2"] = "function func2() { hello(); }";

// 保存 PDF 文檔
doc.Save("output.pdf");

在 C# 中從 PDF 中刪除 JavaScript

以下是使用 C# 從 PDF 中刪除 JavaScript 的步驟。

以下代碼示例顯示瞭如何在 C# 中從 PDF 中刪除 JavaScript。

// 載入文件
Document doc1 = new Document("input.pdf");

// 獲取並打印 JavaScript 密鑰
IList keys = (System.Collections.IList)doc1.JavaScript.Keys;
foreach (string key in keys)
{
    Console.WriteLine(key + " ==> " + doc1.JavaScript[key]);
}

// 使用鍵刪除 JavaScript
doc1.JavaScript.Remove("func1");

// 保存 PDF 文檔
doc1.Save("output.pdf");

獲得免費許可證

您可以獲得免費的臨時許可證,以便在沒有評估限制的情況下使用 Aspose.PDF for .NET。

結論

在本文中,您學習瞭如何使用 C# 將 JavaScript 添加到 PDF 文件。此外,您還了解瞭如何以編程方式從 PDF 中刪除 JavaScript。此外,您可以使用 文檔 探索更多關於 .NET PDF API 的信息。如果您有任何問題或疑問,可以通過我們的 論壇 與我們聯繫。

也可以看看