Ajouter JavaScript aux fichiers PDF en C# .NET

PDF est un format de document riche en termes de polyvalence et de fonctionnalités. L’un des principaux avantages du PDF est sa mise en page cohérente sur des plates-formes hétérogènes. De plus, il a la capacité d’être affiché dans les applications de bureau et les navigateurs Web en même temps. C’est la raison pour laquelle les fichiers PDF sont capables d’exécuter JavaScript. Dans cet article, nous allons montrer comment ajouter ou supprimer du JavaScript dans des fichiers PDF à l’aide de C#.

API C# .NET pour ajouter ou supprimer JavaScript dans un PDF

Aspose.PDF for .NET est conçu pour effectuer la génération et la manipulation de PDF dans les applications .NET. L’API vous permet de créer, traiter et convertir en toute transparence des fichiers PDF de mises en page simples et complexes. Vous pouvez télécharger les binaires de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.PDF

Ajouter JavaScript aux fichiers PDF en C#

Les fichiers PDF prennent en charge Acrobat JavaScript, qui est basé sur le noyau de JavaScript version 1.5 de la norme ISO-16262, anciennement connu sous le nom d’ECMAScript. Il s’agit d’un langage de script orienté objet développé par Netscape Communications. Avant de procéder à l’ajout de JavaScript aux fichiers PDF, examinons les différences entre Acrobat JavaScript et HTML JavaScript qui est utilisé dans les navigateurs Web.

  • Acrobat JavaScript n’a pas accès aux objets d’une page HTML. De même, HTML JavaScript ne peut pas accéder aux objets d’un fichier PDF.
  • HTML JavaScript est capable de manipuler des objets tels que Window. Cependant, Acrobat JavaScript ne peut pas accéder à ces objets particuliers, mais il peut manipuler des objets spécifiques au PDF.

Voici les étapes pour ajouter JavaScript à un fichier PDF en C#.

L’exemple de code suivant montre comment ajouter JavaScript à un PDF.

// Charger un fichier PDF
Document doc = new Document("input.pdf");

// Instanciez JavascriptAction avec l'instruction JavaScript souhaitée
JavascriptAction javaScript = new JavascriptAction("this.print({bUI:true,bSilent:false,bShrinkToFit:true});");

// Attribuez l'objet JavascriptAction à l'action souhaitée du document
doc.OpenAction = javaScript;

// Ajout de JavaScript au niveau de la page
doc.Pages[2].Actions.OnOpen = new JavascriptAction("app.alert('page 1 opened')");
doc.Pages[2].Actions.OnClose = new JavascriptAction("app.alert('page 1 closed')");

// Enregistrer le document PDF
doc.Save("output.pdf");

Ajouter du JavaScript au niveau du document dans un PDF en C#

Vous pouvez également ajouter JavaScript au niveau du document à l’aide de la propriété Document.JavaScript. Voici les étapes pour ajouter JavaScript au niveau du document en C#.

L’exemple de code suivant montre comment ajouter JavaScript à un PDF en C#.

// Charger ou créer un fichier PDF
Document doc = new Document();

// Ajouter une page
doc.Pages.Add();

// Ajouter du JavaScript au niveau du document
doc.JavaScript["func1"] = "function func1() { hello(); }";
doc.JavaScript["func2"] = "function func2() { hello(); }";

// Enregistrer le document PDF
doc.Save("output.pdf");

Supprimer JavaScript d’un PDF en C#

Voici les étapes pour supprimer JavaScript d’un PDF en C#.

L’exemple de code suivant montre comment supprimer JavaScript d’un PDF en C#.

// Charger le document
Document doc1 = new Document("input.pdf");

// Obtenir et imprimer des clés JavaScript
IList keys = (System.Collections.IList)doc1.JavaScript.Keys;
foreach (string key in keys)
{
    Console.WriteLine(key + " ==> " + doc1.JavaScript[key]);
}

// Supprimer JavaScript à l'aide de la clé
doc1.JavaScript.Remove("func1");

// Enregistrer le document PDF
doc1.Save("output.pdf");

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser Aspose.PDF for .NET sans limitation d’évaluation.

Conclusion

Dans cet article, vous avez appris à ajouter du JavaScript aux fichiers PDF en C#. De plus, vous avez vu comment supprimer JavaScript d’un PDF par programme. En outre, vous pouvez en savoir plus sur l’API .NET PDF à l’aide de la documentation. Si vous avez des questions ou des questions, vous pouvez nous contacter via notre forum.

Voir également