Чтение метаданных jpeg xmp с помощью javascript

Есть ли способ прочитать метаданные jpg с помощью javascript? Меня больше всего интересует значение рейтинга xmp (рейтинг 5 звезд, отображаемый в проводнике Windows). Также интересно время, когда был сделан снимок.

Я знаю, что могу получить эти данные, используя код на стороне сервера, но я хотел бы избежать дополнительных циклов, чтобы получить эту информацию.

Мой вариант использования — это простой веб-сайт галереи, где я хотел бы показать рейтинг, данный в проводнике Windows, и, возможно, такие вещи, как время съемки и т. д.


person hazard    schedule 16.07.2013    source источник
comment
вы действительно должны сделать эту информацию доступной во время публикации страницы. хотя вы можете получить информацию из двоичных файлов, это относительно дорого, хрупко и медленно, а не то, что каждый посетитель должен делать при каждом посещении.   -  person dandavis    schedule 16.07.2013
comment
Контент динамический (я хочу, чтобы новые фотографии добавлялись автоматически), поэтому делать эту информацию доступной перед публикацией для меня не вариант. Я надеялся, что метаданные уже отправлены клиенту (думая, что весь файл изображения отправляется по сети), но, изучив это, я начинаю думать, что это не так.   -  person hazard    schedule 17.07.2013
comment
ну, вы можете включить средство обновления метаданных во все, что автоматически добавляет изображения, поскольку это, безусловно, какой-то процесс на стороне сервера...   -  person dandavis    schedule 18.07.2013
comment
Хорошо, я решил, что то, что, как я надеялся, было возможным, не очень легко сделать, поэтому я сделаю эту работу на стороне сервера. Спасибо за ваши комментарии.   -  person hazard    schedule 19.07.2013
comment
Я пытаюсь найти ту же информацию. flickr написал в блоге сообщение о том, как они это делают. code.flickr.net/2012 /06/01/ Тем не менее, похоже, что это в основном относится к конкретным камерам, а не к пользовательским описаниям, таким как рейтинги, теги и т. д.   -  person bodine    schedule 16.10.2014


Ответы (1)


Метаданные XMP в формате JPEG на самом деле представляют собой обычный текст, встроенный в файл JPEG.

Если вы откроете JPEG как текстовый файл и ctr-f «xmp», вы попадете в метаданные XMP. Он будет в формате xml.

В javascript вы можете просто использовать API-интерфейс для чтения файлов, чтобы прочитать текст, а затем проанализировать строку xmp, чтобы получить информацию, которую вы ищете.

person Sam K    schedule 19.07.2016