Для метаданных изображения, какой тег допускает наибольший лимит символов? - PullRequest
2 голосов
/ 27 июня 2011

Например, в стандарте Exif есть тег «Комментарий пользователя», который, как я полагаю, ограничен 256 символами.

Если я хочу добавить, скажем, историю в метаданные, какой будет лучшим вариантом для меня?несколько мегабайт текста.

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

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

Как мне использовать существующий тег или сделать свой собственный, чтобы я мог иметьпочти нет ограничений на размер текста?Мне все равно, насколько большой файл становится.

Ответы [ 2 ]

3 голосов
/ 22 октября 2012

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

Изображения JPEG имеют ограничение размера сегмента 64 КБ.EXIF UserComment не имеет ограничения по длине, но EXIF ​​ограничен одним сегментом JPEG, поэтому он ограничен 64 КБ.

Некоторые редакторы метаданных (например, ExifTool) поддерживают многосегментные типы метаданных.Комментарии XMP и JPEG могут занимать несколько сегментов.Я бы предложил просто использовать комментарий JPEG, потому что многосегментная поддержка XMP, вероятно, не очень распространена.Если вы выбираете XMP, может подойти что-то вроде тега XMP-dc: Description.

1 голос
/ 27 июня 2011

Вы смотрели на расширенные наборы данных IPTC ?Кажется, они позволяют вам делать то, что вы хотите.

Или, если изображение идет между системами, вы можете просто добавить его в конец данных изображения - например, при лжи JPG я могу сделать что-тонапример:

cat >> my image.jpg

написать в некотором тексте, и это не мешает приложениям, читающим JPG.

Конечно, если вам нужно, чтобы передаваемая информация длилась через несколько редактирований изображения,тогда EXIF ​​(или IPTC) является единственным способом хранения данных.

...