From f57e71234a19620ecb42d051df11a06a5a4b50da Mon Sep 17 00:00:00 2001 From: imnyang Date: Sat, 8 Feb 2025 21:48:21 +0900 Subject: [PATCH] =?UTF-8?q?=ED=95=99=EC=82=AC=EC=9D=BC=EC=A0=95=EC=9D=B8?= =?UTF-8?q?=EB=8D=B0=EC=88=98=EB=8F=99=EC=9E=85=EB=8B=88=EB=8B=A4=EC=9A=B0?= =?UTF-8?q?=EB=A6=AC=ED=95=99=EA=B5=90=EB=82=98=EC=9D=B4=EC=8A=A4=EC=97=90?= =?UTF-8?q?=EB=93=B1=EB=A1=9D=EC=95=88=ED=95=98=EB=8A=94=EC=93=B0@?= =?UTF-8?q?=EB=A0=88=EA=B8=B0=EC=97=AC=EC=84=9C=EC=9A=B0=EB=A6=AC=EB=8A=94?= =?UTF-8?q?=EC=9D=B4=EB=94=B4=EA=B3=A0=EC=83=9D=EC=9D=84=ED=95=98=EA=B3=A0?= =?UTF-8?q?=EC=9E=88=EB=8A=94=EB=8D=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{schoolevent.json => event/2025.json} | 8 +++-- app/library/lib.py | 32 ++++++++++++++----- 2 files changed, 29 insertions(+), 11 deletions(-) rename app/library/{schoolevent.json => event/2025.json} (62%) diff --git a/app/library/schoolevent.json b/app/library/event/2025.json similarity index 62% rename from app/library/schoolevent.json rename to app/library/event/2025.json index d3082de..6708f06 100644 --- a/app/library/schoolevent.json +++ b/app/library/event/2025.json @@ -1,14 +1,16 @@ { - "1": { + "02": { "0": { "start": 20250208, "end": 20250302, - "data": "겨울방학" + "data": "겨울방학 & 봄방학" }, "1": { "start": 20250303, "end": 20250303, - "data": "" + "data": "입학식" } + }, + "03": { } } \ No newline at end of file diff --git a/app/library/lib.py b/app/library/lib.py index 0a51ec9..e0c4baa 100644 --- a/app/library/lib.py +++ b/app/library/lib.py @@ -15,7 +15,7 @@ from PIL import ImageFont import library.vts as vts import os -from datetime import datetime +from datetime import datetime, timedelta with open('./config.json') as json_file: json_data = json.load(json_file) @@ -68,25 +68,41 @@ def 얻기(MLSV_YMD:str): def 학사일정_얻기(): print("서코가고싶다발동") - 오늘 = datetime.now() - 학사일정 = "" + 오늘 = datetime.now() + timedelta(days=1) + print("오늘은 사실", 오늘, "이였다") + with open(f"{ROOT}/library/event/{오늘.strftime("%Y")}.json") as json_file: + json_data = json.load(json_file) + 학사일정 = json_data[str(오늘.strftime("%m"))] # print(f"{ROOT}/library/skeleton.png") 사진 = Image.open(f"{ROOT}/library/skeleton_schoolevent.png") #if vts.get_vts_true_or_false() == True: 사진 = Image.open(f'{ROOT}/library/skeleton-vts.png') - 학사일정_폰트 = ImageFont.truetype(font, 56) + 학사일정_폰트 = ImageFont.truetype(font, 48) 세부_폰트 = ImageFont.truetype(font, 24) 제목요소 = ImageDraw.Draw(사진) - for i, line in enumerate(reversed(학사일정.split('\n'))): - 제목요소.text((75, 930 - i * 60), line, font=학사일정_폰트, anchor="ls", fill=(255, 255, 255)) + for i, 일정 in enumerate(학사일정.values()): + if 일정['data']: + start_date = datetime.strptime(str(일정['start']), "%Y%m%d") + end_date = datetime.strptime(str(일정['end']), "%Y%m%d") + + if start_date == end_date: + date_text = f"{start_date.day}일" + elif start_date.year != end_date.year: + date_text = f"{start_date.year}년 {start_date.month}월 {start_date.day}일 ~ {end_date.year}년 {end_date.month}월 {end_date.day}일" + elif start_date.month != end_date.month: + date_text = f"{start_date.month}월 {start_date.day}일 ~ {end_date.month}월 {end_date.day}일" + else: + date_text = f"{start_date.day}일 ~ {end_date.day}일" + + 제목요소.text((75, 930 - i * 60), f"{date_text} : {일정['data']}", font=학사일정_폰트, anchor="ls", fill=(255, 255, 255)) 세부요소 = ImageDraw.Draw(사진) - 세부요소.text((767, 80), f"{오늘.strftime("%Y")}년 {오늘.strftime("%m")}월", font=세부_폰트, fill=(255, 255, 255)) + 세부요소.text((810, 80), f"{오늘.strftime("%Y")}년 {오늘.strftime("%m")}월", font=세부_폰트, fill=(255, 255, 255)) #세부요소.text((825, 200), f"{급식_칼로리_얻기(MLSV_YMD)}", font=세부_폰트, fill=(137, 202, 255)) - 사진.save(f'{ROOT}/temp/{오늘.strftime("%Y")}_{오늘.strftime("%m")}월.png') + 사진.save(f'{ROOT}/temp/{오늘.strftime("%Y")}_{오늘.strftime("%m")}.png') print("🍲 | Meal Info Image Saved")