当前位置:首页>科技>电脑如何自己做电子相册把闲置电脑改成电子相册
发布时间:2026-07-21阅读(1)
现在手机的拍照功能日趋强大,每个人电脑上想必都至少有几十个G的照片吧。全打印出来实在是太费钱了。而闲置的旧电脑完全可以利用起来播放这些照片。下面就介绍利用Conky和Python实现随机播放相片的功能
Conky是一个显示系统状态的Linux软件,可以图形化显示CPU, 内存,网络流量等。下面是一个来自官方网站的示例图。

conky.png
它的配置文件语法很简单,分为配置和显示两部分
conky.config={ own_window=true, own_window_class=Conky, own_window_type=override, own_window_colour=ffffff, own_window_transparent=true, double_buffer=true, update_interval=1, use_xft=true,};conky.text = [[ ${execpi 300 /home/lxq/myscripts/change_photo.py}]]
conky.config里面是实现显示图片的必要部分。conky.text 则是用execpi每300秒调用一个Python代码显示图片。 把上面的代码保存为一个文件conkyfile。 执行conky -c conkyfile 即可
change_photo.py 必须返回${image sample.jpg -p 20, 400 -s 400x400} 这样的格式。sample.jpg 可以替换成你需要的照片的完整文件路径。p参数即position,照片在conky显示区域的相对位置。 s参数为size,即照片的宽度和高度。
下面是change_photo.py的完整代码#! /usr/bin/python3import os,randomfrom PIL import Imagefrom PIL import ExifTagsdef rotate(image): for orientation in ExifTags.TAGS.keys() : if ExifTags.TAGS[orientation]==Orientation : break exif=dict(image._getexif().items()) if exif[orientation] == 3 : image=image.rotate(180, expand=False) elif exif[orientation] == 6 : image=image.rotate(270, expand=False) elif exif[orientation] == 8 : image=image.rotate(90, expand=False) return imagefolder="/home/user/photo/Camera"photo=random.choice([f for f in os.listdir(folder) if f.endswith(".jpg")])photo=os.path.join(folder,photo)img=Image.open(photo)img=rotate(img)img.thumbnail((500,700))tmpimage=os.path.join("/tmp","slide.jpg")img.save(tmpimage)img=Image.open(tmpimage)width,height=img.sizeprint(photo)print(f"${{image /tmp/slide.jpg -p 10,420, -s {width}x{height} -n }}")
Conky是很强大的工具。虽然官方推荐lua,但你可以用你喜欢的任何开发语言输出它支持的格式。Python有足够的库可以很快的开发,就差你的想象力了。
上一篇:怎样剪辑教程详细怎么剪辑内容
下一篇:如何注册qq号 怎样注册qq号
Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图