Gimpは、Exifデータを持つjpegファイルを編集して保存する時に、Exifデータの一部も付けて保存してくれる。しかし、すべてのExifデータが保存されるわけではないし、なによりも最新のバージョン2.4系列からは、(オリジナルのExifではカメラの機種名だった)Software文字列と、編集日時が書き換えられてしまう。
設定ファイル gimp.rc などでこの機能をOFFにする(バージョン2.2互換とする)事が出来ないのか、ソースコードを探ってみたが、結局全て再コンパイルしなければいけないというのが分かっただけだった。
書き換えが行われている部分
void jpeg_setup_exif_for_save (ExifData *exif_data, const gint32 image_ID)
{
// ~ 所々、略 ~
/* set software to "GIMP" and include the version number */
if ((entry = exif_content_get_entry (exif_data->ifd[EXIF_IFD_0],
EXIF_TAG_SOFTWARE)))
{
const gchar *name = "GIMP " GIMP_VERSION;
entry->data = (guchar *) g_strdup (name);
entry->size = strlen (name) + 1;
entry->components = entry->size;
}
/*
* set the date & time image was saved
* note, date & time of original photo is stored elsewwhere, we
* aren't losing it.
*/
if ((entry = exif_content_get_entry (exif_data->ifd[EXIF_IFD_0],
EXIF_TAG_DATE_TIME)))
{
/* small memory leak here */
entry->data = NULL;
exif_entry_initialize (entry, EXIF_TAG_DATE_TIME);
}
}
ということで、写真を編集する時は、いつまで経ってもVersion 2.2.17 を使い続けることになる…