#!/usr/bin/python # -*- coding:utf-8 -*- import epd5in83b import time from PIL import Image,ImageDraw,ImageFont import traceback import pytz import datetime import locale import random try: epd = epd5in83b.EPD() epd.init() youbi = [u"月曜日",u"火曜日",u"水曜日",u"木曜日",u"金曜日",u"土曜日",u"日曜日"] #画像の数のランダム整数を出す kakugen_img_num = random.randint(1,157) #ランダム整数を0埋めして、ファイルパスと拡張子をくっつける。 kakugen_img_path = "KAKUGEN_IMG/KAKUGEN_" + str(kakugen_img_num).zfill(3) + ".bmp" #Drawing on the Horizontal image HBlackimage = Image.new('1', (epd5in83b.EPD_WIDTH, epd5in83b.EPD_HEIGHT), 255) # 600*448 HRedimage = Image.new('1', (epd5in83b.EPD_WIDTH, epd5in83b.EPD_HEIGHT), 255) # 600*448 kakugenimage = Image.new('1', (epd5in83b.EPD_WIDTH, epd5in83b.EPD_HEIGHT), 255) # 600*448 #黒・赤用に別々の画像変数を用意 drawblack = ImageDraw.Draw(HBlackimage) drawred = ImageDraw.Draw(HRedimage) #画像を取得し黒に格納 kakugenimage = Image.open(kakugen_img_path) #フォント設定 font = ImageFont.truetype('rounded-x-mplus-2p-heavy.ttf', 60) #タイムゾーンを指定し、時間取得 jp_now = datetime.datetime.now(pytz.timezone('Asia/Tokyo')) #表示する文字を一回変数に貯める today = jp_now.strftime('%m/%d %H:%M ') + youbi[jp_now.weekday()] #時間を描画バッファに入れる drawblack.text((10, 350), today, font = font, fill = 0) #画像の下に線を引く drawblack.line(((0, 338),(600, 338)),fill = 0) #黒画像の上に格言イメージを乗せる HBlackimage.paste(kakugenimage) #180度画像を反転させる HBlackimage = HBlackimage.rotate(180) #バッファをディスプレイに書き出し epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) epd.sleep() except: print('traceback.format_exc():\n%s',traceback.format_exc()) exit()