Modificare gli elementi di un array nei metadati XMP di un file EPS | Python

Per modificare gli elementi dell’array nei metadati XMP di un file EPS, è necessario eseguire diversi passaggi:

  1. Inizializzare un flusso di input per il file EPS di input.
  2. Creare un’istanza di PsDocument dal flusso di input creato in precedenza.
  3. Ottenere un’istanza di XmpMetadata dal PsDocument. Se il file EPS non contiene metadati XMP, ne verrà creato uno nuovo, popolato con i valori dei commenti dei metadati PS, e restituito all’utente.
  4. Ora è possibile modificare gli elementi dei campi dei metadati dell’array.
  5. Inizializzare un flusso di output per il file EPS di output.
  6. Salvare il file EPS con i nuovi metadati XMP.


Ecco un frammento di codice che mostra come modificare gli elementi dell’array nei metadati XMP di un file EPS utilizzando 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_simple_props_input.eps", "rb",)
 5# Create a PsDocument instance from stream
 6document = PsDocument(ps_stream)
 7
 8try:
 9    # Get XMP metadata. If EPS file doesn't contain any 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 the XMP metadata values
13    
14    # Change the title item at index 0
15    xmp.set_array_item("dc:title", 0, XmpValue("NewTitle"))
16    
17    # Change the creator item at index 0
18    xmp.set_array_item("dc:creator", 0, XmpValue("NewCreator"))
19    
20    # Save the EPS file with the changed XMP metadata
21    
22    # Create an ouput stream
23    with open(data_dir + "change_array_items_output.eps", "wb") as out_ps_stream:
24        # Save EPS file
25        document.save(out_ps_stream)
26    
27finally:
28    ps_stream.close()

Vedere la modifica degli elementi dell’array nei metadati XMP in .NET, Java e C++.

È possibile scaricare esempi e file di dati da GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.