Змінити елементи масиву в метаданих XMP EPS| Python

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

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


Ось фрагмент коду, який показує, як змінити елементи масиву в метаданих 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 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()

Перегляньте зміну елементів масиву в метаданих XMP у .NET, Java і C++.

Ви можете завантажити приклади і файли даних з GitHub.

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.