Додайте простір імен XML у метадані XMP EPS |Python

Щоб додати простір імен XML до метаданих XMP файлу EPS, потрібно виконати такі дії:

  1. Ініціалізуйте вхідний потік для вхідного файлу EPS.
  2. Створіть екземпляр PsDocument із попередньо створеного вхідного потоку.
  3. Отримайте екземпляр XmpMetadata із PsDocument. Якщо файл EPS не містить метаданих XMP, буде створено новий файл, заповнений значеннями з коментарів метаданих PS, а потім повернений вам.
  4. Тепер ви можете додати новий простір імен XML до метаданих.
  5. Ініціалізуйте вихідний потік для вихідного файлу EPS.
  6. Збережіть файл EPS з оновленими метаданими XMP.


У наступному прикладі коду показано, як додати простір імен XML до метаданих XMP у файлі EPS за допомогою 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()

Перегляньте додавання простору імен XMl у метадані XMP у .NET, Java і C++.

Перегляньте і завантажте цей і інші приклади і файли даних з GitHub.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.