How to read Lightroom keywords from image file using PHP?

给你一囗甜甜゛ 提交于 2019-12-10 16:16:55

问题


I have a photo community (www.jungledragon.com) that allows users to upload photos. My platform is PHP/CodeIgniter.

As part of the upload process I'm already reading EXIF info using PHP's exif_read_data function, which works fine. I read camera details and show these on an info tab.

On top of that, user's are expected to manually set the photo title, description and tags on the website after uploading the photo. However, some users manage these fields in their image management program, for example Lightroom. It would be great if I could read those as well, uploading would become a total joy.

I already improved my EXIF reading to read the "caption", this way users don't have to set the image title after uploading anymore. Now I'm looking to read keywords, which is where I am stuck. Here's a partial screenshot of an image in Lightroom:

I can read the Metadata, but how do I read the keywords? The fact that it is not inside metadata makes me wonder if it's at all possible? I've tried reading every value I can get (ANY_TAG, IFD0, EXIF, APP12) using exif_read_data, but the keywords are not to be found.

Any thoughts?


回答1:


As suggested you may have to use another method of reading metadata.

http://www.foto-biz.com/Lightroom/Exif-vs-iptc-vs-xmp

Image keywords may be stored in IPTC and not in EXIF. I don't know if there is a standard platform method for reading iptc but a quick google shows this

http://php.net/manual/en/function.iptcparse.php




回答2:


Try using PEL, a much more comprehensive library than exif_read_data() for exif data.




回答3:


After a long research, i found the solution to get keywords exported by lightroom in a jpg file :

$image = getimagesize($imagepath, $info);
if(isset($info['APP13']))
{
    $iptc = iptcparse($info['APP13']);
    $keywordcount = count($iptc["2#025"]);
    for ($i=0; $i<$keywordcount; $i++)
    { 
        echo "keyword : " . $iptc["2#025"][$i] . "<br/>";
    }
}


来源:https://stackoverflow.com/questions/7053383/how-to-read-lightroom-keywords-from-image-file-using-php

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!