Cerco di scrivere parole chiave in immagini PNG usando ExifTool ma Spotlight di OS X non può vedere queste parole chiave a tutti.
Lo sviluppatore di ExifTool non conosce Spotlight, quindi non può aiutarti:
"I wouldn't be surprised if spotlight doesn't parse metadata in PNG images. But I'm not the one to ask about this. I don't know much about how spotlight works."
Ho provato molte varianti diverse ma Spotlight non visualizza le mie parole chiave:
/usr/local/bin/exiftool -api PNGEarlyXMP 1 -api IgnoreMinorErrors 1 -Keywords+="my keyword" -overwrite_original_in_place -P path_is_here.png
Limitazioni in Spotlight, Anteprima e Photoshop
Apple Spotlight and Preview (OS X 10.8.5) e Adobe Photoshop CC (versione 14.0) ignorano XMP nelle immagini PNG se viene dopo i dati dell'immagine, che è dove ExifTool aggiunge il nuovo XMP. Questo dovrebbe essere considerato un bug nel software Apple e Adobe poiché XMP può esistere dopo i dati dell'immagine in base alle specifiche XMP e PNG. [ExifTool 9.40 fornisce l'opzione API PNGEarlyXMP per consentire la scrittura di XMP prima del blocco IDAT, ma ci sono avvertenze associate al suo uso]
PNGEarlyXMP
Flag di ExifTool su scrivere XMP in immagini PNG prima dell'IDAT (dati immagine ) pezzo. Per impostazione predefinita, ExifTool aggiunge un nuovo XMP alla fine di un file PNG (poco prima di IEND). Questo è permesso dalle specifiche PNG e XMP, ma alcune utility sembrano ignorare XMP se viene dopo i dati dell'immagine. L'opzione PNGEarlyXMP fa sì che ExifTool aggiunga invece un nuovo XMP prima del blocco IDG PNG. Tuttavia, poiché ExifTool utilizza un algoritmo di scrittura a passaggio singolo, non ha modo di sapere se XMP esiste già più avanti nel file prima di scrivere il nuovo XMP in questa posizione. Se ciò accade, viene emesso un errore minore quando viene rilevato XMP in eccesso e il file non viene scritto. Aggiungendo l'opzione IgnoreMinorErrors si elimina l'XMP dopo IDAT, risolvendo così il conflitto (a scapito della possibile perdita di metadati) e consentendo la scrittura del file. L'opzione PNGEarlyXMP viene applicata automaticamente quando si elimina tutto XMP e si scrive di nuovo XMP in un unico passaggio. Durante la lettura, questa opzione fa sì che venga emesso un avviso se viene trovato XMP standard dopo il blocco IDAT.
IgnoreMinorErrors
Flag per ignorare errori minori. Fa sì che gli errori minori vengano declassati agli avvisi e gli avvisi secondari vengano ignorati. Questa opzione è fornita principalmente per consentire la scrittura di file quando si verificano errori minori, ma ignorando alcuni avvertimenti minori il comportamento di ExifTool può essere modificato per consentire alcune operazioni discutibili (come estrarre le anteprime e le immagini di anteprima anche se non hanno un'intestazione riconoscibile). Errori / avvisi minori sono indicati da "[minore]" all'inizio del messaggio o "[Minori]" (con una "M" maiuscola) per gli avvisi che influiscono sull'elaborazione quando ignorati.