| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #!/usr/bin/env python3
- # -*- coding:utf-8 -*-
- import sys
- import os
- pydir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))
- picdir = os.path.join(pydir, "wavesharelib",'pic')
- libdirs = [
- os.path.join(pydir),
- os.path.join(pydir, 'wavesharelib','lib'),
- ]
- for d in libdirs:
- if os.path.exists(d):
- sys.path.append(d)
- import logging
- from waveshare_epd import epd2in13_V2
- import time
- from PIL import Image,ImageDraw
- from simpilib import wrapText,loadFontSize
- epd = epd2in13_V2.EPD()
- logging.info("init and Clear")
- epd.init(epd.FULL_UPDATE)
- epd.Clear(0xFF)
- image = Image.new('1', (epd.height, epd.width), 255)
- draw = ImageDraw.Draw(image)
- try:
- import requests
- import json
- import random
- r = requests.get('https://type.fit/api/quotes')
- r = r.json()
- r = random.choices(r)[0]
- text = r["text"] + " - " + r["author"]
- except Exception as ex:
- text = str(ex)
- fontpath = os.path.join(picdir, 'Font.ttc')
- text, longline = wrapText(text)
- font = loadFontSize(text, draw, image, fontpath)
- w, h = draw.textsize(text, font=font)
- center = (
- int((epd.height-w)/2),
- int((epd.width-h)/2)
- )
- print(center, (w, h), (epd.width, epd.height))
- draw.text(center, text, align="center", font = font, fill = 0)
- # epd.display(epd.getbuffer(image.rotate(180)))
- epd.display(epd.getbuffer(image))
- epd.sleep()
- epd.Dev_exit()
|