Modifier les métadonnées des fichiers PDF à l'aide de C#

Les métadonnées sont une carte de visite d’un document numérique particulier qui se compose d’un ensemble de propriétés. Ces propriétés contiennent des informations de base sur le document telles que le titre, l’auteur, le sujet, les mots-clés, etc. Extensible Metadata Platform (XMP) est un format basé sur XML qui permet d’enregistrer les métadonnées du document dans une paire clé/valeur. Nous pouvons ajouter/modifier des informations de document et des métadonnées XMP dans un document PDF par programme. Dans cet article, nous allons apprendre comment modifier les métadonnées des fichiers PDF à l’aide de C#.

Les sujets suivants seront traités dans cet article:

API C# pour modifier les métadonnées des fichiers PDF

Pour modifier les informations de métadonnées dans un document PDF, nous utiliserons Aspose.PDF pour .NET API. Il nous permet de générer, modifier, convertir, restituer, sécuriser et imprimer documents pris en charge sans utiliser Adobe Acrobat. Veuillez soit télécharger la DLL de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Pdf

Modifier les métadonnées d’un fichier PDF en C

Nous pouvons modifier les informations d’un document PDF à l’aide de la classe DocumentInfo qui représente les méta-informations d’un document PDF. Nous pouvons définir diverses propriétés prédéfinies en suivant les étapes ci-dessous:

  1. Tout d’abord, chargez un document PDF à l’aide de la classe Document.
  2. Ensuite, créez une instance de la classe DocumentInfo avec l’objet de classe Document comme argument.
  3. Ensuite, définissez diverses propriétés telles que Author, CreationDate, Keywords, Subject, Title, etc.
  4. Enfin, enregistrez le fichier PDF à l’aide de la méthode Document.Save() avec le chemin du fichier de sortie comme argument.

L’exemple de code suivant montre comment modifier les métadonnées d’un fichier PDF à l’aide de C#.

// Cet exemple de code montre comment définir les informations de base d'un document PDF.
// Ouvrir le document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample.pdf");

// Initialiser l'objet DocumentInfo
DocumentInfo docInfo = new DocumentInfo(pdfDocument);

// Spécifier les propriétés des informations sur le document
docInfo.Author = "Aspose";
docInfo.CreationDate = DateTime.Now;
docInfo.Keywords = "Aspose.Pdf, DOM, API";
docInfo.ModDate = DateTime.Now;
docInfo.Subject = "PDF Information";
docInfo.Title = "Setting PDF Document Information";

// Enregistrer le document
pdfDocument.Save("C:\\Files\\PDF\\sample_metadata.pdf");
Modifier les métadonnées d'un fichier PDF en C#.

Modifier les métadonnées d’un fichier PDF en C #.

Obtenir les métadonnées d’un fichier PDF à l’aide de C

Nous pouvons lire les informations de base d’un document PDF **** en suivant les étapes ci-dessous:

  1. Tout d’abord, chargez un document PDF à l’aide de la classe Document.
  2. Ensuite, créez une instance de la classe DocumentInfo avec l’objet de classe Document comme argument.
  3. Enfin, affichez les informations du document en lisant les valeurs des propriétés des métadonnées.

L’exemple de code suivant montre comment obtenir les métadonnées d’un fichier PDF à l’aide de C#.

// Cet exemple de code montre comment obtenir les informations de base d'un document PDF.
// Ouvrir le document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample_metadata.pdf");

// Obtenir des informations sur les documents
DocumentInfo docInfo = pdfDocument.Info;

// Afficher les informations sur le document
Console.WriteLine("Author: {0}", docInfo.Author);
Console.WriteLine("Creation Date: {0}", docInfo.CreationDate);
Console.WriteLine("Keywords: {0}", docInfo.Keywords);
Console.WriteLine("Modify Date: {0}", docInfo.ModDate);
Console.WriteLine("Subject: {0}", docInfo.Subject);
Console.WriteLine("Title: {0}", docInfo.Title);
Author: Aspose
Creation Date: 2/9/2022 9:47:00 AM
Keywords: Aspose.Pdf, DOM, API
Modify Date: 2/9/2022 9:47:00 AM
Subject: PDF Information
Title: Setting PDF Document Information

Obtenir les métadonnées XMP d’un fichier PDF à l’aide de C

Nous pouvons lire les métadonnées XMP d’un document PDF **** en suivant les étapes ci-dessous:

  1. Tout d’abord, chargez un document PDF à l’aide de la classe Document.
  2. Enfin, lisez la propriété Metadata et extrayez les informations.

L’exemple de code suivant montre comment obtenir les métadonnées XMP d’un fichier PDF à l’aide de C#.

// Cet exemple de code montre comment obtenir les métadonnées XMP d'un document PDF.
// Ouvrir le document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample_xmp.pdf");

// Afficher les informations XMP
Console.WriteLine("xmp:CreateDate: " + pdfDocument.Metadata["xmp:CreateDate"]);
Console.WriteLine("xmp:Nickname: " + pdfDocument.Metadata["xmp:Nickname"]);
Console.WriteLine("xmp:CustomProperty: " + pdfDocument.Metadata["xmp:CustomProperty"]);
xmp:CreateDate: 2022-02-09T08:57:00.7+05:00
xmp:Nickname: Nickname
xmp:CustomProperty: Custom Value

Définir les métadonnées XMP dans un fichier PDF à l’aide de C#

Nous pouvons définir les métadonnées XMP dans un fichier PDF à l’aide de la propriété Metadata de la classe Document en suivant les étapes ci-dessous:

  1. Tout d’abord, chargez un document PDF à l’aide de la classe Document.
  2. Ensuite, définissez les valeurs des métadonnées à l’aide de la propriété Metadata.
  3. Enfin, enregistrez le fichier PDF à l’aide de la méthode Document.Save() avec le chemin du fichier de sortie comme argument.

L’exemple de code suivant montre comment définir les métadonnées XMP d’un fichier PDF à l’aide de C#.

// Cet exemple de code montre comment définir les métadonnées XMP d'un document PDF.
// Ouvrir le document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample.pdf");

// Définir les propriétés
pdfDocument.Metadata["xmp:CreateDate"] = DateTime.Now;
pdfDocument.Metadata["xmp:Nickname"] = "Nickname";
pdfDocument.Metadata["xmp:CustomProperty"] = "Custom Value";

// Enregistrer le document
pdfDocument.Save("C:\\Files\\PDF\\sample_xmp.pdf");

Personnaliser l’espace de noms de métadonnées XMP dans un fichier PDF

La spécification Adobe XMP définit les quatre (4) espaces de noms principaux suivants que nous utilisons normalement:

  1. Dublin Core avec l’URI d’espace de noms comme “http://purl.org/dc/elements/1.1/” et son préfixe d’espace de noms préféré est ‘dc’.
  2. Le XMP avec l’URI d’espace de noms comme http://ns.adobe.com/xap/1.0/ et son préfixe d’espace de noms préféré est ‘xmp’.
  3. Gestion des droits XMP avec l’URI de l’espace de noms http://ns.adobe.com/xap/1.0/rights/ » et son préfixe d’espace de noms préféré est « xmpRights ».
  4. XMP Media Management avec l’URI de l’espace de noms « http://ns.adobe.com/xap/1.0/mm/ » et son préfixe d’espace de noms préféré est « xmpMM ».

Nous pouvons également définir l’URI de l’espace de noms personnalisé au lieu des spécifications XMP définies dans un fichier PDF. À cette fin, l’API fournit la méthode RegisterNamespaceUri dans la classe Metadata. Nous pouvons créer un nouvel espace de noms de métadonnées avec un préfixe en suivant les étapes ci-dessous:

  1. Tout d’abord, chargez un document PDF à l’aide de la classe Document.
  2. Ensuite, appelez la méthode RegisterNamespaceUri avec un préfixe et un URI d’espace de noms comme arguments.
  3. Définissez ensuite les valeurs des métadonnées à l’aide de la propriété Metadata.
  4. Enfin, enregistrez le fichier PDF à l’aide de la méthode Document.Save() avec le chemin du fichier de sortie comme argument.

L’exemple de code suivant montre comment définir un espace de noms de métadonnées personnalisé dans un fichier PDF à l’aide de C#.

// Cet exemple de code montre comment définir l'URI namepsace personnalisé dans un document PDF.
// Ouvrir le document
Document pdfDocument = new Document("C:\\Files\\PDF\\sample.pdf");

// Définir les propriétés
pdfDocument.Metadata.RegisterNamespaceUri("myown", "http:// myown.xyz.com/xap/1.0/");
pdfDocument.Metadata["myown:ModifyDate"] = DateTime.Now;
pdfDocument.Metadata["myown:CreateDate"] = DateTime.Now;
pdfDocument.Metadata["myown:DeveloperName"] = "Developer Name";
pdfDocument.Metadata["myown:MyProperty"] = "My Custom Value";


// Enregistrer le document
pdfDocument.Save("C:\\Files\\PDF\\sample_myown.pdf");

Nous pouvons lire les propriétés de métadonnées XMP personnalisées en suivant les étapes mentionnées précédemment.

myown:ModifyDate: 2022-02-09T10:38:26.8+05:00
myown:CreateDate: 2022-02-09T10:38:26.8+05:00
myown:DeveloperName: Developer Name
myown:MyProperty: My Custom Value

Obtenez une licence API gratuite

Vous pouvez essayer l’API sans limitation d’évaluation en demandant une licence temporaire gratuite.

Conclusion

Dans cet article, nous avons appris à:

  • ajouter/modifier les informations de base d’un document PDF à l’aide de C# ;
  • définir/obtenir les métadonnées XMP dans un fichier PDF à l’aide de C# ;
  • définir l’URI de l’espace de noms de métadonnées personnalisées avec un préfixe.

En outre, vous pouvez en savoir plus sur Aspose.PDF pour l’API .NET en utilisant la documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur le forum.

Voir également