Ajouter une valeur nommée dans XMP | Python
Pour ajouter une valeur nommée aux métadonnées XMP d’un fichier EPS, procédez comme suit :
- Initialisez un flux d’entrée pour le fichier EPS d’entrée.
- Créez une instance de PsDocument à partir du flux d’entrée précédemment créé.
- Obtenez une instance de XmpMetadata à partir du PsDocument. Si le fichier EPS ne contient pas de métadonnées XMP, un nouveau sera créé et rempli avec les valeurs des commentaires de métadonnées PS, puis vous sera renvoyé.
- Vous pouvez maintenant ajouter la valeur nommée aux champs de métadonnées de la structure.
- Initialisez un flux de sortie pour le fichier EPS de sortie.
- Enregistrez le fichier EPS avec les métadonnées XMP mises à jour.
Vous trouverez ci-dessous un extrait de code montrant comment ajouter une valeur nommée aux métadonnées XMP dans un fichier EPS en Python :
1 # The path to the documents directory.
2data_dir = Util.get_data_dir_working_with_xmp_metadata_in_eps()
3# Initialize an EPS file input stream
4ps_stream = open(data_dir + "add_named_value_input.eps", "rb",)
5# Create PsDocument instance from stream
6document = PsDocument(ps_stream)
7
8try:
9 # Get XMP metadata. If the EPS file doesn't contain XMP metadata we get a new one filled with values from PS metadata comments (%%Creator, %%CreateDate, %%Title etc)
10 xmp = document.get_xmp_metadata()
11
12 #Change XMP metadata values
13
14 # Add a named value to "xmpTPg:MaxPageSize" structure.
15 xmp.add_named_value("xmpTPg:MaxPageSize", "stDim:newKey", XmpValue("NewValue"))
16
17 # Save the EPS file with changed XMP metadata
18
19 # Create an ouput stream
20 with open(data_dir + "add_named_value_output.eps", "wb") as out_ps_stream:
21 # Save EPS file
22 document.save(out_ps_stream)
23
24finally:
25 ps_stream.close()
Vous pouvez télécharger tous les exemples et fichiers de données à partir de GitHub.