DocumentAncestors - система "цифровых отпечатков" встраиваемых в метаданные изображений некоторыми продуктами Adobe (в частности Фотошопом). Изначально задумывалась как некий аналог копирайта - каждый создаваемый документ имеет свой уникальный код, любой объект в этом документе наследует его. При переносе объектов из документа в документ цифровые отпечатки источника и получателя объединяются, что в определенных условиях позволяет отследить историю создания документов и сопоставить их по принципу "родитель - наследник". В большинстве случаев эти метки не доставляют проблем, однако при определенных рабочих процессах (бесконечное перетаскивание объектов из файла в файл с последующим сохранением) количество меток растет лавинообразно, иногда достигая сотен тысяч строк, что не только доставляет неудобства для пользователя, но и вызывает различные глюки в программах для обработки изображений.
Скрипт позволяет пакетно удалить этот тэг из всех изображений в указанной пользователем папке. Использует AdobeXMPScript в безопасном режиме (удаление производится движком Фотошопа только после подтверждения целостности блока метаданных). Другие метаданные не трогаются.
После построения списка файлов для обработки (куда попадают не все файлы, а только те в которых был найден блок DocumentAncestors) скрипт предлагает два варианта: удалить метаданные без открытия файлов или с открытием файлов в Фотошопе.
Первый вариант быстрее, подходит для большинства пользователей, однако он не сработает если блок XMP секции метаданных поврежден (или отличен от стандарта). Второй вариант с открытием каждого файла заметно медленнее, но он решает проблему с поврежденными метаданными (при открытии файла Фотошоп пытается сам восстановить структуру блока XMP).
Обратите внимание:
- скрипт удаляет тэги только из самого документа, но не из встроенных в него линкованных файлов и смарт-объектов (что в ряде случаев представляет собой отдельную проблему).
- оценка размера удаляемых метаданных делается приблизительно, исходя из количества найденных строк (считать фактическое количество байт в каждой строке средствами JS можно, но слишком накладно по времени)
Скрипт позволяет пакетно удалить этот тэг из всех изображений в указанной пользователем папке. Использует AdobeXMPScript в безопасном режиме (удаление производится движком Фотошопа только после подтверждения целостности блока метаданных). Другие метаданные не трогаются.
После построения списка файлов для обработки (куда попадают не все файлы, а только те в которых был найден блок DocumentAncestors) скрипт предлагает два варианта: удалить метаданные без открытия файлов или с открытием файлов в Фотошопе.
Первый вариант быстрее, подходит для большинства пользователей, однако он не сработает если блок XMP секции метаданных поврежден (или отличен от стандарта). Второй вариант с открытием каждого файла заметно медленнее, но он решает проблему с поврежденными метаданными (при открытии файла Фотошоп пытается сам восстановить структуру блока XMP).
Обратите внимание:
- скрипт удаляет тэги только из самого документа, но не из встроенных в него линкованных файлов и смарт-объектов (что в ряде случаев представляет собой отдельную проблему).
- оценка размера удаляемых метаданных делается приблизительно, исходя из количества найденных строк (считать фактическое количество байт в каждой строке средствами JS можно, но слишком накладно по времени)