智能互联网时钟 TeaCan2.1(OLED图片文字混合显示)

一直想让图片和文字同时显示在OLED上,研究了10来天,本来想从根本上解决这个问题,但看驱动很久也不得要领,不得不退而求其次,使用整屏图片显示。最后的结果如下:

在这里插入图片描述

实际图片显示比较清楚,至少没这么糊。一开始使用jpg图片,效果很差,后来改用png格式,效果原来一样,还不错。

实现原理:

整个背景其实就是一张黑背景带一张图片(128*128)。然后把所有的文字数据写到这张图片上。再整屏显示这个带文字的图片。每分钟更新一次。显示基本没有延时,整体显示还是比较完美的。
相关代码如下:
def data():
    #打开图片
    imageFile = "321.png"
    background=Image.open(imageFile)

    #在图片上添加文字
    draw = ImageDraw.Draw(background)
    draw.text((0,0), a, font = font18, fill = "yellow")
    draw.text((0,21),b, font = font13, fill = "RED")
    draw.text((0,33),time.strftime('%H:%M') , font = font, fill = "BLUE")
    draw.text((47,70), c, font = font13, fill = "WHITE")
    draw.text((47,85), d, font = font13, fill = "BROWN")
    draw.text((47,100), e, font = font13, fill = "PURPLE")
    draw.text((47,115), f, font = font13, fill = "PINK")

    draw = ImageDraw.Draw(background)

    #保存图片
    background.save("background1.png")

PS:原代码中中华万年历的API天气更新“经常”失败导致天气文件下载失败,程序不提示退出,屏幕也不显示。现在还不知道是什么原因。后期可能要加个判断,不可能让屏幕不显示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kim5659

你的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值