Вы можете написать собственный блок данных TIFF, а внутри этого блока данные форматируются с помощью «частного» формата (в случае использования памяти RichTIFFIPTC - в случае памяти). То, что вы не может do отправляет несколько тегов объекту TIFF и ожидает, что они попадут в какой-либо конкретный порядок.
Я считаю, что Photoshop, среди прочего, всегда пишет объект данных фиксированной длины как один тег, а затем перезаписывает его внутренности в свободное время.
В связи с тем, что сбор EXIF и TIFF тегов коллекции перекрываться, вы не можете сделать это и есть ваши теги доступны для чтения LibTIFF, хотя:
[tag1],[tag2],[tag3] ---> [privateTiffLongObject] --> not re-readable
[tag1],[tag2],[tag3] ---> [Tiff2],[Tiff3],[Tiff1] --> re-readable
Это говорит, что это, что вы пытаетесь достичь? Чтобы просто перетащить теги из файла JPEG в файл TIFF, я бы рискнул, что exiftool
должно быть достаточно. Я часто использовал рабочий процесс, как в следующем:
(image) --> exiftool --> XML --> XML parsers -->
--> exiftool --> (new image)
Конечно, если вам нужно сделать, это для большой партии изображений, выступление может стать проблемой. Однако эту проблему можно решить с помощью RAM-дисков и устройств SSD.
«Взлом» формата TIFF может оставить вас с файлами, которые эффективно написаны и правильно обработаны программными средствами, которые у вас есть сейчас, но не будут совместимы с каким-либо другим инструментом в другом месте - и это может быть обнаружено после вас 've done недель работы.
Спасибо за ваш ответ, я предполагаю, что в итоге я просто воспользуюсь функцией TIFFSetField() несколько раз для всех тегов exif. –
Взлом tiff в моем случае не является вариантом, потому что файл должен быть хорошо читаемым Photoshop со всеми тегами exif. И у меня ограничены только программные механизмы (невозможно использовать какие-либо инструменты).Я пытался получить производительность, написав весь блок байтов, как и EXIF IFD (потому что у меня его уже есть). К сожалению, оказывается, что в этом случае это не сработает. –
Я думаю, что Photoshop предпочтительно читает одно отдельное поле в формате XMP. Сегодня вечером я получу свои заметки, но вы можете посмотреть на это. – LSerni