2

我想使用已上传到画廊的照片中的 EXIF 数据。特别是,我希望能够在照片拍摄的 EXIF 日期对文件夹或收藏集的 plonetruegallery 视图中的图像进行排序。谷歌搜索告诉我 ATImage 类型确实存储了 EXIF 数据,但我最近没有看到任何使用它的东西。即使我可以只导入图像以将创建日期更改为取自 EXIF DateTimeOriginal 的日期,那也很棒。

有没有其他人试图实现这一目标?

4

4 回答 4

2

由于您的用例非常狭窄,其他人不太可能尝试对 Plone 做同样的事情。一些通用指针:

使用 EXIF-py 戳存储在 ImageField 中的原始图像数据

https://github.com/ianare/exif-py

杂项。关于 Archeypes 图像和文件字段的信息:

http://collective-docs.readthedocs.org/en/latest/content/archetypes/files.html

于 2012-08-01T13:30:08.957 回答
2

对于 iptc 元数据(大多数图像工具都存储元数据),您可以尝试http://pypi.python.org/pypi/unweb.iptc

这是一个使用事件订阅者的巧妙而现代的解决方案。如果您只有 exif 元数据,您可以重用代码并使用 exif-py 执行相同操作

于 2012-08-01T19:53:33.983 回答
1

ATPhoto (http://plone.org/products/atphoto/) 已经过时了,你不应该大量使用它,但你可以看看它如何解析 EXIF 标签以获得灵感(和代码重用)。

于 2012-08-01T15:17:21.550 回答
0

默认情况下,ATImage 对象继承自 imagetransform,因此它们有一个名为 getExif() 的方法:https ://github.com/plone/Products.ATContentTypes/blob/master/Products/ATContentTypes/lib/imagetransform.py#L87

与图库的集成取决于您,并且不应该比在标题中执行 context/getExif 并以您想要的方式显示更难。

这里插件的主要问题是关于性能和依赖关系。使用 python 进行解析、存储、同步,这是 IMO 相当大的问题来源。

我已经尝试了许多 python 包 promize 来提取和构造 exif,而无需真正的开箱即用解决方案。

于 2012-08-10T14:56:24.003 回答