Organizzare le foto con i metadati IPTC

  • 3 Sep 2014
  • Linux, Drupal

I file generati da gran parte delle machine fotografiche digitali registrano tutte le informazioni tecniche relative alle foto utilizzando lo standard Exif. Altre informazioni, come ad esempio le parole chiavi, possono essere registrate utilizzando il formato IPTC.

Aggiungere etichette ad un'immagine

Per manipolare i tag dei metadati IPTC esiste un fantastico commando chiamato... iptc.

Risulta molto semplice impostare una o più etichette su tutti i file dentro una cartella: Prima si eliminano quelle esistenti e poi si aggiungono quelle desiderate.

# iptc -d Keywords:all *;iptc -a Keywords -v "Viaggio in Calabria" *;cd ..;ll

Se l'immagine viene utilizzata in un sito sviluppato con Drupal è possibile utilizzare il modulo Exif per estrarre le etichette IPTC.

Con questo codice PHP è possibile estrarre le etichette IPTC da un file

if (function_exists('getimagesize')) {
  $size = getimagesize(drupal_realpath($destination), $info);

  // get tags
  if(isset($info['APP13'])) {
    $iptc = iptcparse($info['APP13']);
    
    if (isset($iptc["2#025"])) {
      $keywords = "";
      for ($i=0; $i<count($iptc["2#025"]); $i++) {
        $keywords .= trim($iptc["2#025"][$i]) . ",";
      } 
      $iptc_tags = trim($keywords, ",");
    }
  }
}