我有一个大的照片集有大量的元数据,我想在科迪幻灯片屏幕显示. 随着大量阅读, 试验, 和试错, 我终于得到了一个合理的制度,显示了我希望的.
找到幻灯片屏幕保护程序的主文件 (在窗口上) 在用户%用户名%应用程序数据漫游科迪插件 screensaver.picture.slideshow 资源 lib和被称为gui.py
如果您知道一些python,则可以对该文件进行各种修改. 以下是我向作者展示的信息, 卡梅拉, 拍摄地点和时间. 我将所有照片保存在一个以8个字符为起始日期的文件夹中,因此从文件夹名称中获取位置 (YY-MM-DD) 接着是地点或活动名称.
行之后 163, 为相机和作者添加了以下空值
camera = 'unknown camera'
artist = 'unknown'
行之后 173, 添加了以下内容以从exif获取相机和作者
如果exiftags.has_key('Image Model'): 相机= STR(exiftags['Image Model']).解码('utf-8') 如果exiftags.has_key('Image Artist'): 艺术家= STR(exiftags['Image Artist']).解码('utf-8')
更改后的行 183 开始处理或重新格式化日期
时间=日期时间{10:].分裂(':')
更换线 187 创建更好的格式
如果日期[1] == '01': 日期[1] = 'Jan' elif date[1] == '02': 日期[1] = 'Feb' elif date[1] == '03': 日期[1] = 'Mar' elif date[1] == '04': 日期[1] = 'Apr' elif date[1] == '05': 日期[1] = 'May' elif date[1] == '06': 日期[1] = 'Jun' elif date[1] == '07': 日期[1] = 'Jul' elif date[1] == '08': 日期[1] = 'Aug' elif date[1] == '09': 日期[1] = 'Sept' elif date[1] == '10': 日期[1] = 'Oct' elif date[1] == '11': 日期[1] = 'Nov' elif date[1] == '12': 日期[1] = 'Dec' datetime = date[2] + '-' + 日期[1] + '-' + 日期[0] + ' at' + 时间[0] + ':' + 时间[1]
更换线 228 输出新数据
根, FOLDER = os.path.split这样(os.path.dirname(IMG[0])) galname =文件夹 如果 (galname or 'x')[1].ISDIGIT(): galname = FOLDER[9:] self.datelabel.setLabel(端部密封 + '. Taken with ' + 相机 + ' on ' + 日期时间 + '. (Ç) ' + 艺术家 + '.')
“Hi James I realise it has been a long while, but I just checked this on windows 11 (build 23H2)…”