Как я могу добавить метаданные к изображению? - PullRequest
7 голосов
/ 11 августа 2010

Где можно вставить метаданные в файл изображения и в какой файл это сделать? я хочу сделать это с php.

Ответы [ 6 ]

5 голосов
/ 09 сентября 2013

Php интеграция в изображения;)

http://bechtsoudis.com/archive/2011/09/08/php-code-into-jpeg-metadata-from-hide-to-unhide/index.html

JPEG, TIFF, PSD, Raw и некоторые другие форматы файлов могут включать любые или все следующие стандартные типы метаданных:

IPTC-ММВ Эту схему, которую часто называют «устаревшей» IPTC, разработали в начале 1990-х годов, прежде всего для того, чтобы помочь новостным организациям в создании субтитров ранних цифровых изображений. Его основное преимущество заключается в том, что большинство программ для редактирования и управления изображениями могут читать и записывать свои широко совместимые поля.

IPTC Core & Extension Эта новая схема основана на наследии IIM, добавляя больше типов описательной и административной информации, в том числе новые поля для удовлетворения потребностей сообществ, занимающихся стоковой фотографией и культурным наследием, в более надежном формате данных «XMP».

PLUS Универсальная система Picture Licensing для идентификации и определения лицензий на использование изображений описывает схему и инструменты для генерации строки символов, которые могут идентифицировать владельца авторских прав, пользователя, объем и условия использования лицензированного изображения.

XMP Это более новый формат данных, используемый ядром и расширением IPTC для хранения и доступа к метаданным изображения. Он позволяет хранить метаданные в файле изображения или в сопутствующем дополнительном файле, а также позволяет создавать настраиваемые поля метаданных.

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

Дублинское ядро Многие библиотеки изображений и широкий спектр отраслей хранят информацию с помощью файлов изображений с помощью этой схемы. Некоторые из его полей совместимы с форматами IPTC.

2 голосов
/ 14 сентября 2013

Вы можете перейти к функции iptcembed в PHP, чтобы добавить информацию к изображению.использование можно найти по адресу: http://php.net/manual/en/function.iptcembed.php

Дополнительные данные можно получить с помощью функции iptcparse.

Дайте мне знать, если это работает для вас.

2 голосов
/ 12 сентября 2013

Вы можете использовать библиотеки изображений, такие как imagemagick

http://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=20183

Есть еще один известный мне инструмент, называемый Jhead, который может извлекать и изменять некоторые метаданные, если изображения

http://www.sentex.net/~mwandel/jhead/

0 голосов
/ 07 июня 2018

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

Чтобы использовать его, я сегодня написал для личного проекта простой PHP-скрипт, который напишет Latitude /Информация о долготе, если она уже есть в переменных PHP.

И, что очень важно, способ добавления значений GPSLatitudeRef и GPSLongitudeRef на основе предыдущих.В основном, если широта положительна, то GPSLatitudeRef должен иметь значение «Север» и «Юг», если отрицательно.Для GPSLongitudeRef то же самое, но с положительным положением «Восток» и отрицательным «Запад».

$bashExifEdit = "";
$longitudeRef = "East";
if ($longitude < 0) {
    $longitudeRef = "West";
}
$latitudeRef = "North";
if ($latitude < 0) {
    $latitudeRef = "South";
}

if ($sleepingPlace != null) {
    $bashExifEdit .= "exiftool -GPSLongitude=\"".$longitude."\"  -GPSLatitude=\"".$latitude.".\" -GPSLatitudeRef=\"$latitudeRef\" -GPSLongitudeRef=\"$longitudeRef\"  images/your_image.jpg\n";
}

Это создаст строку с символом конца строки для каждого изображения.Если вы добавите для, то вы можете просто написать на него содержимое $bashExifEdit, и вуаля!Автоматический способ задания всех деталей GPS (кроме высоты, которая не отличается от широты / долготы) на основе широты / долготы ваших изображений.

0 голосов
/ 12 сентября 2013

В PHP вы можете использовать заголовки:

пример:

 header('Content-Length: ' . filesize($file));  /// that's the file size 

Вы можете добавить еще несколько таких заголовков, и это будет работать. Вы даже можете отправить несколько пользовательских заголовков, и это будетвсе еще работает :)

0 голосов
/ 11 августа 2010

Недавно я увидел в блоге w3c действительно классную статью о комбинировании RDFa и HTML <imagemap> для обогащения изображений путем указания не только того, что на изображении, но и того, где оно находится на изображении: http://www.w3.org/QA/2008/01/rdfa_and_html_imagemap.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...