Thêm JavaScript vào tệp PDF trong C# .NET

PDF là một định dạng tài liệu phong phú về tính linh hoạt và tính năng. Một trong những ưu điểm chính của PDF là bố cục nhất quán của nó trên các nền tảng không đồng nhất. Hơn nữa, nó có khả năng được hiển thị trong các ứng dụng máy tính để bàn và trình duyệt web cùng một lúc. Đây là lý do mà các tệp PDF có khả năng chạy JavaScript. Trong bài viết này, chúng tôi sẽ trình bày cách thêm hoặc xóa JavaScript trong tệp PDF bằng C#.

C# .NET API để Thêm hoặc Xóa JavaScript trong PDF

Aspose.PDF dành cho .NET được thiết kế để thực hiện thao tác và tạo PDF trong các ứng dụng .NET. API cho phép bạn tạo, xử lý và chuyển đổi liền mạch các tệp PDF có bố cục đơn giản và phức tạp. Bạn có thể tải xuống mã nhị phân của API hoặc cài đặt nó bằng NuGet.

PM> Install-Package Aspose.PDF

Thêm JavaScript vào tệp PDF trong C#

Các tệp PDF hỗ trợ Acrobat JavaScript, dựa trên cốt lõi của JavaScript phiên bản 1.5 của ISO-16262, trước đây được gọi là ECMAScript. Nó là một ngôn ngữ kịch bản hướng đối tượng được phát triển bởi Netscape Communications. Trước khi tiếp tục thêm JavaScript vào tệp PDF, chúng ta hãy xem xét sự khác biệt giữa Acrobat JavaScript và HTML JavaScript được sử dụng trong trình duyệt web.

  • Acrobat JavaScript không có quyền truy cập vào các đối tượng trong trang HTML. Tương tự, HTML JavaScript không thể truy cập các đối tượng trong tệp PDF.
  • HTML JavaScript có thể thao tác các đối tượng như Window. Tuy nhiên, Acrobat JavaScript không thể truy cập các đối tượng cụ thể này nhưng nó có thể thao tác các đối tượng cụ thể của PDF.

Sau đây là các bước để thêm JavaScript vào tệp PDF trong C#.

Mẫu mã sau đây cho thấy cách thêm JavaScript vào PDF.

// Tải tệp PDF
Document doc = new Document("input.pdf");

// Khởi tạo JavascriptAction với câu lệnh JavaScript mong muốn
JavascriptAction javaScript = new JavascriptAction("this.print({bUI:true,bSilent:false,bShrinkToFit:true});");

// Gán đối tượng JavascriptAction cho hành động mong muốn của tài liệu
doc.OpenAction = javaScript;

// Thêm JavaScript ở cấp độ trang
doc.Pages[2].Actions.OnOpen = new JavascriptAction("app.alert('page 1 opened')");
doc.Pages[2].Actions.OnClose = new JavascriptAction("app.alert('page 1 closed')");

// Lưu tài liệu PDF
doc.Save("output.pdf");

Thêm JavaScript cấp độ tài liệu trong PDF trong C#

Bạn cũng có thể thêm JavaScript vào cấp tài liệu bằng cách sử dụng thuộc tính Document.JavaScript. Sau đây là các bước để thêm JavaScript vào cấp tài liệu trong C#.

Mẫu mã sau đây cho thấy cách thêm JavaScript vào PDF trong C#.

// Tải hoặc tạo tệp PDF
Document doc = new Document();

// Thêm trang
doc.Pages.Add();

// Thêm JavaScript cấp tài liệu
doc.JavaScript["func1"] = "function func1() { hello(); }";
doc.JavaScript["func2"] = "function func2() { hello(); }";

// Lưu tài liệu PDF
doc.Save("output.pdf");

Xóa JavaScript khỏi PDF trong C#

Sau đây là các bước để xóa JavaScript khỏi PDF trong C#.

Mẫu mã sau đây cho thấy cách xóa JavaScript khỏi PDF trong C#.

// Tải tài liệu
Document doc1 = new Document("input.pdf");

// Nhận và in các khóa JavaScript
IList keys = (System.Collections.IList)doc1.JavaScript.Keys;
foreach (string key in keys)
{
    Console.WriteLine(key + " ==> " + doc1.JavaScript[key]);
}

// Xóa JavaScript bằng khóa
doc1.JavaScript.Remove("func1");

// Lưu tài liệu PDF
doc1.Save("output.pdf");

Nhận giấy phép miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng Aspose.PDF for .NET mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, bạn đã học cách thêm JavaScript vào tệp PDF trong C#. Hơn nữa, bạn đã thấy cách xóa JavaScript khỏi PDF theo chương trình. Bên cạnh đó, bạn có thể khám phá thêm về .NET PDF API bằng cách sử dụng tài liệu. Trong trường hợp bạn có bất kỳ câu hỏi hoặc thắc mắc nào, bạn có thể liên hệ với chúng tôi qua diễn đàn của chúng tôi.

Xem thêm