我有一个大的照片集有大量的元数据,我想在科迪幻灯片屏幕显示. 随着大量阅读, 试验, 和试错, 我终于得到了一个合理的制度,显示了我希望的.
找到幻灯片屏幕保护程序的主文件 (在窗口上) 在用户%用户名%应用程序数据漫游科迪插件 screensaver.picture.slideshow 资源 lib和被称为gui.py
如果您知道一些python,则可以对该文件进行各种修改. 以下是我向作者展示的信息, 卡梅拉, 拍摄地点和时间. 我将所有照片保存在一个以8个字符为起始日期的文件夹中,因此从文件夹名称中获取位置 (YY-MM-DD) 接着是地点或活动名称.
行之后 163, 为相机和作者添加了以下空值
1 2 | camera = ‘unknown camera’ artist = ‘unknown’ |
行之后 173, 添加了以下内容以从exif获取相机和作者
1 2 3 4 | if exiftags.has_key(‘Image Model’): camera = str(exiftags[‘Image Model’]).decode(‘utf‑8’) if exiftags.has_key(‘Image Artist’): artist = str(exiftags[‘Image Artist’]).decode(‘utf‑8’) |
更改后的行 183 开始处理或重新格式化日期
1 | time = datetime{10:].split(‘:’) |
更换线 187 创建更好的格式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | if date[1] == ‘01’: date[1] = ‘Jan’ elif date[1] == ‘02’: date[1] = ‘Feb’ elif date[1] == ‘03’: date[1] = ‘Mar’ elif date[1] == ‘04’: date[1] = ‘Apr’ elif date[1] == ‘05’: date[1] = ‘May’ elif date[1] == ‘06’: date[1] = ‘Jun’ elif date[1] == ‘07’: date[1] = ‘Jul’ elif date[1] == ‘08’: date[1] = ‘Aug’ elif date[1] == ‘09’: date[1] = ‘Sept’ elif date[1] == ‘10’: date[1] = ‘Oct’ elif date[1] == ‘11’: date[1] = ‘Nov’ elif date[1] == ‘12’: date[1] = ‘Dec’ datetime = date[2] + ‘-’ + date[1] + ‘-’ + date[0] + ’ at’ + time[0] + ‘:’ + time[1] |
更换线 228 输出新数据
1 2 3 4 5 | ROOT, FOLDER = os.path.split(os.path.dirname(img[0])) galname = FOLDER if (galname or ‘x’)[1].isdigit(): galname = FOLDER[9:] self.datelabel.setLabel(galname + ‘. Taken with ’ + camera + ’ on ’ + datetime + ‘. © ’ + artist + ‘.’) |
有你自己的一些想法? 下面放纵自己的评论! 如果您想订阅,请使用菜单上的订阅链接右上方. 您还可以通过使用下面的链接社会分享这与你的朋友. 干杯.
Leave a Reply