1

我正在尝试从 gimpfu 插件中访问图像 exif 数据,特别是照片的拍摄日期,我可以使用 PIL 来做到这一点,

from PIL import Image

date_taken = Image.open(file)._getexif()[36867]

但是当我尝试导入 PIL 时,插件不再出现在 gimp 菜单中。没有产生错误,GIMP 正常启动。有没有办法用 gimpfu 获取 exif 数据?或者有没有办法将 PIL 导入插件?

4

1 回答 1

1

如果插件不再出现在 Gimp 菜单中,很可能是因为它存在一些问题,导致它无法运行到最后进行注册。这可能是语法错误,或者在这种情况下是导入 PIL 的问题。如果您在 Linux 或 OSX 上,这很容易调试,只需在终端会话中启动 Gimp,python 解释器的错误消息就会显示在那里。在 Windows 上,您可以使用参数启动 Gimp,--verbose以使其使用附加的控制台窗口运行消息,但我不确定 Python 错误是否显示在那里。如果他们不这样做,请将整个代码括在 try/except 中,并将异常错误转储到文件中。您可以使用该traceback模块来获取更多信息(错误行号等),但它本身可能是其他导入错误的原因......

要回答您最初的问题,您可以使用以下方法从 Gimp 获取 EXIF 数据:

exifData=image.parasite_find('exif-data').data

然而,这只是一个字节数组,你必须自己进行解析(但我相信你会找到 python 代码片段来提取你想要的数据)。

于 2016-12-16T09:02:11.570 回答