Agregue espacio de nombres XML en metadatos XMP |Python

Para agregar un espacio de nombres XML a los metadatos XMP de un archivo EPS, debe realizar los siguientes pasos:

  1. Inicialice un flujo de entrada para el archivo EPS de entrada.
  2. Cree una instancia de PsDocument a partir del flujo de entrada creado anteriormente.
  3. Obtenga una instancia de XmpMetadata del PsDocument. Si el archivo EPS no contiene metadatos XMP, se creará uno nuevo, se completará con valores de los comentarios de metadatos PS y luego se lo devolverá.
  4. Ahora puedes agregar un nuevo espacio de nombres XML a los metadatos.
  5. Inicialice un flujo de salida para el archivo EPS de salida.
  6. Guarde el archivo EPS con los metadatos XMP actualizados.

El siguiente ejemplo de código demuestra cómo agregar un espacio de nombres XML a los metadatos XMP en un archivo EPS usando 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 XMP metadata values
13    
14    # Add a new XML namespace "tmp".
15    xmp.register_namespace_uri("tmp", "http://www.some.org/schema/tmp#")
16    
17    # Add a new string property in new namespace.
18    xmp.add("tmp:newKey", XmpValue("NewValue"))
19    
20    # Save the EPS file with the changed XMP metadata
21    
22    # Create an ouput stream
23    with open(data_dir + "add_namespace_output.eps", "wb") as out_ps_stream:
24        # Save EPS file
25        document.save(out_ps_stream)
26    
27finally:
28    ps_stream.close()

Consulte cómo agregar un espacio de nombres XML en los metadatos XMP en .NET, Java y C++.

Examine y descargue este y otros ejemplos y archivos de datos de GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.