新人下载app,立即提现现金 您的好友 送你现金 去提现

自己动手,把你的NAS里的照片做成电子相册

DigiHacker 05-23 16:51 关注

现在手机的拍照功能日趋强大,每个人电脑上想必都至少有几十个G的照片吧。全打印出来实在是太费钱了。而闲置的旧电脑完全可以利用起来播放这些照片。下面就介绍利用Conky和Python实现随机播放相片的功能

Conky

Conky是一个显示系统状态的Linux软件,可以图形化显示CPU, 内存,网络流量等。下面是一个来自官方网站的示例图。



自己动手,把你的NAS里的照片做成电子相册


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 即可

Python端代码

change_photo.py 必须返回${image sample.jpg -p 20, 400 -s 400x400} 这样的格式。sample.jpg 可以替换成你需要的照片的完整文件路径。p参数即position,照片在conky显示区域的相对位置。 s参数为size,即照片的宽度和高度。

下面是change_photo.py的完整代码


自己动手,把你的NAS里的照片做成电子相册

bash会读取第一行,拿到python的完整路径,然后执行下面的代码。记着 要执行chmod +x change_python.py ,给这个python可执行权限。

智能手机和部分高端相机有传感器可以感知你拍照时是横拍还是竖拍,然后存在相片的exif信息里。rotate函数会读取照片的exif获取拍照方向信息,然后旋转照片到正常角度。不然就会显示倒立的人了。

第19行,指定你的照片目录地址,注意是完整路径。

第21行,random.choice 会从列表中随机选择一个。 这里要过滤一下,只取jpg文件。

thumbnail 会生成缩略图并保持图片比例

第29行,存到tmp目录中

第32行,取出图片宽度和高度

第36行,输出Conky需要的格式

小结

Conky是很强大的工具。虽然官方推荐lua,但你可以用你喜欢的任何开发语言输出它支持的格式。Python有足够的库可以很快的开发,就差你的想象力了。


展开阅读全文

查看更多好文内容,新用户限时领现金

暂无评论,打开APP参与讨论

最新软件应用优惠
Microsoft 微软 Office 365 家庭版 1年订阅 6用户
Microsoft 微软 Office 365 家庭版 1年订阅 6用户
229元包邮
京东 06-05
31 84%
Microsoft 微软 Office 365 家庭版 1年订阅 6用户
Microsoft 微软 Office 365 家庭版 1年订阅 6用户

分期免息 | 3期

229元包邮
京东 06-02
32 61%
猜你喜欢
查看更多
相关好价
相关商品
查看更多热门商品
社区主页 文章详情
1
1
0
你已经点过赞了
新浪微博 QQ空间 微信好友 豆瓣
当前为触屏版
热门搜索