Додайте JavaScript до PDF-файлів у C# .NET

PDF – це багатий формат документів з точки зору універсальності та функцій. Однією з головних переваг PDF є його узгоджене розташування на різних платформах. Крім того, він має можливість відображатися в настільних програмах і веб-браузерах одночасно. Це причина того, що PDF-файли можуть запускати JavaScript. У цій статті ми продемонструємо, як додати або видалити JavaScript у PDF-файли за допомогою C#.

C# .NET API для додавання або видалення JavaScript у PDF

Aspose.PDF for .NET призначений для створення та обробки PDF-файлів у програмах .NET. API дозволяє легко створювати, обробляти та конвертувати файли PDF із простим і складним макетом. Ви можете завантажити двійкові файли API або встановити їх за допомогою NuGet.

PM> Install-Package Aspose.PDF

Додайте JavaScript до PDF-файлів у C#

PDF-файли підтримують Acrobat JavaScript, який базується на ядрі JavaScript версії 1.5 ISO-16262, раніше відомого як ECMAScript. Це об’єктно-орієнтована мова сценаріїв, розроблена Netscape Communications. Перш ніж перейти до додавання JavaScript до PDF-файлів, давайте подивимося на відмінності між Acrobat JavaScript і HTML JavaScript, який використовується у веб-браузерах.

  • Acrobat JavaScript не має доступу до об’єктів на сторінці HTML. Так само HTML JavaScript не може отримати доступ до об’єктів у файлі PDF.
  • HTML JavaScript здатний маніпулювати такими об’єктами, як Window. Однак Acrobat JavaScript не може отримати доступ до цих конкретних об’єктів, але може маніпулювати об’єктами PDF.

Нижче наведено кроки, щоб додати JavaScript до PDF-файлу на C#.

  • Завантажте PDF-файл за допомогою класу Document.
  • Створіть екземпляр класу JavascriptAction та ініціалізуйте його за допомогою потрібного сценарію.
  • Призначте об’єкт JavascriptAction властивості Document.OpenAction для JavaScript рівня документа.
  • Щоб додати JavaScript рівня сторінки, використовуйте властивість Document.Pages[index].Actions.
  • Збережіть PDF за допомогою методу Document.Save(String).

У наведеному нижче прикладі коду показано, як додати JavaScript до PDF-файлу.

// Завантажте файл PDF
Document doc = new Document("input.pdf");

// Створіть екземпляр JavascriptAction за допомогою потрібного оператора JavaScript
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");

Додайте JavaScript на рівні документа в PDF на C#

Ви також можете додати JavaScript на рівень документа за допомогою властивості Document.JavaScript. Нижче наведено кроки для додавання JavaScript на рівень документа в C#.

  • Завантажте PDF-файл за допомогою класу Document.
  • Використовуйте колекцію Document.JavaScript, щоб додати функції JavaScript.
  • Збережіть PDF за допомогою методу Document.Save(String).

У наведеному нижче прикладі коду показано, як додати JavaScript до PDF-файлу на C#.

// Завантажте або створіть файл 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");

Видалення JavaScript із PDF-файлу на C#

Нижче наведено кроки для видалення JavaScript із PDF-файлу на C#.

У наведеному нижче прикладі коду показано, як видалити JavaScript із PDF-файлу на C#.

// Завантажити документ
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 без оціночних обмежень.

Висновок

У цій статті ви дізналися, як додати JavaScript до файлів PDF у C#. Крім того, ви бачили, як видалити JavaScript із PDF-файлу програмним шляхом. Крім того, ви можете дізнатися більше про .NET PDF API за допомогою документації. Якщо у вас виникнуть запитання чи запити, ви можете зв’язатися з нами через наш форум.

Дивись також