我想使用上传到图库的照片中的EXIF数据。特别是,我喜欢能够在EXIF拍摄照片的日期对文件夹或集合的打印视图中的图像进行排序。Googling告诉我ATImage类型确实存储了EXIF数据,但我最近没有看到任何使用它的东西。即使我可以让图像导入将创建日期更改为从EXIF DateTimeOriginal中获取的日期,那就太好了。
还有没有人试图做到这一点?
发布于 2012-08-10 22:56:24
默认情况下,ATImage对象继承自imagetransform,因此它们有一个名为getExif()的方法:https://github.com/plone/Products.ATContentTypes/blob/master/Products/ATContentTypes/lib/imagetransform.py#L87
与图库的集成由你决定,应该不会比在标题中执行context/getExif更困难,并以你想要的方式显示。
这里插件的主要问题是性能和依赖关系。使用python进行解析,存储,同步,这是一个很大的问题来源。
我已经尝试了许多python包,提示提取和构造exif,而没有实际的开箱即用解决方案。
发布于 2012-08-01 21:30:09
由于您的用例非常有限,所以其他人不太可能尝试用Plone做同样的事情。以下是一些一般性的提示:
使用EXIF-py插入存储在ImageField中的原始图像数据
https://github.com/ianare/exif-py
其他。有关Archeypes图像和文件字段的信息:
http://collective-docs.readthedocs.org/en/latest/content/archetypes/files.html
发布于 2012-08-02 03:53:34
对于IPTC元数据(大多数图像工具都存储这两种元数据),您可以尝试http://pypi.python.org/pypi/unweb.iptc
这是一个巧妙和现代的解决方案,使用事件订阅者。如果只有exif元数据,则可以重用代码并使用exif-py执行相同的操作
https://stackoverflow.com/questions/11759285
复制相似问题