Добавить пользовательские теги XMP

Я ищу инструмент или способ (.NET) для добавления пользовательских полей XMP. Кроме того, может ли кто-нибудь объяснить, зачем нужно знать, является ли тег XMP текстовым полем, текстовой областью или выбором?


person derral    schedule 12.03.2013    source источник
comment
Добавлять поля (поля — это то же самое, что и теги?) куда? Вы расширяете графический интерфейс или манипулируете файлами определенного типа (изображения, текстовые документы)?   -  person Ben Companjen    schedule 15.03.2013
comment
На самом деле я пытаюсь добавить настраиваемые поля, чтобы пользователь мог вводить, скажем, «mynewsetting» в качестве настраиваемого поля, устанавливать значение и записывать его в метаданные файла.   -  person derral    schedule 15.03.2013
comment
Что ж, «X» в XMP означает Extensible, так что это возможно. Есть ли какие-либо части спецификации, с которыми вам нужна помощь?   -  person Ben Companjen    schedule 15.03.2013
comment
Ну, я немного смущен тем, как это работает, чтобы разработать его. Просто пытаюсь понять, как взять настраиваемое поле и применить его к файлу. Некоторый пример кода был бы хорош, если это возможно. Я очень ценю вашу помощь в этом ДЕЙСТВИТЕЛЬНО!   -  person derral    schedule 19.03.2013
comment
IndiSnip содержит образец код. Если вы хотите узнать больше об основах формата, см. Часть 1 спецификации XMP; как добавить собственные свойства, описано в часть 2. К сожалению, я не программировал с XMP, но на SO есть другие, кто знает больше.   -  person Ben Companjen    schedule 19.03.2013
comment
Спасибо, Бен, это действительно очень помогло и указало мне правильное направление.   -  person derral    schedule 04.04.2013


Ответы (1)


XMP записывается внутри файлов в виде XML-пакета или в виде отдельного XML-файла. Спецификация XMP использует подмножество RDF/XML. Таким образом, вы можете взглянуть на инструменты для работы с (RDF/)XML.
Однако для встроенных пакетов XP длина пакета должна быть рассчитана и записана в начале пакета, поэтому может помочь наличие специальной библиотеки. Adobe предоставляет для этого XMP SDK (C++).

XMP поддерживает несколько типов контента для полей, таких как текст, число или URL-адрес. Текстовые поля, например, могут быть ограничены значениями из контролируемого словаря, для которых может иметь смысл использовать элемент формы select или dropdown в графическом интерфейсе.

person Ben Companjen    schedule 14.03.2013