私は表示するKODIスライドショーのスクリーンセーバーを望んでいたメタデータのたくさんの大きな写真のコレクションを持っています. たくさんの読みと, 実験, そして試行錯誤, 私は最終的に私が望んでいたものを示している合理的なシステムを持っています.
スライドショーのスクリーンセーバーのための主要なファイルが配置されています (窓に) ユーザーで%ユーザー名%のAppData ローミングコディアドオン libにscreensaver.picture.slideshow リソースと呼ばれるgui.py
あなたには、いくつかのpythonを知っている場合は、このファイルへの変更のすべての種類を作ることができます. 以下は、私は、著者に関する情報を表示するために作られたものです, カメラ, そしていつどこで写真が撮影されました. 私は開始時に8文字の日付でフォルダ内のすべての私の写真を保つように私は、フォルダ名から場所を取得します (YY-MM-DD) 場所やイベント名が続きます.
行の後 163, カメラと著者のために、次のnull値を追加しました
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 = FOLDER もし (galname or 'x')[1].isdigit(): galname = FOLDER[9:] self.datelabel.setLabel(エンドシール + '. Taken with ' + カメラ + ' on ' + 日付時刻 + '. (C言語) ' + アーティスト + '.')
“Hi James I realise it has been a long while, but I just checked this on windows 11 (build 23H2)…”