fix:添加UI界面,完善功能

This commit is contained in:
2025-12-11 11:16:09 +08:00
parent 81e3c40abb
commit f437842a81
17 changed files with 939 additions and 406 deletions

46
utils/growt_utils.py Normal file
View File

@@ -0,0 +1,46 @@
from rich.console import Console
from loguru import logger
from config.config import load_config
from utils.pptx_utils import replace_text_in_slide, replace_picture
# 如果你之前没有全局定义 console这里定义一个
console = Console()
# ==========================================
# 1. 配置区域 (Configuration)
# ==========================================
config = load_config("config.toml")
def replace_one_page(prs, name, class_name):
"""替换第一页信息"""
replace_text_in_slide(prs, 0, "name", name)
replace_text_in_slide(prs, 0, "class", class_name)
def replace_two_page(prs, comments, teacher_name):
"""替换第二页信息"""
replace_text_in_slide(prs, 1, "comments", comments)
replace_text_in_slide(prs, 1, "teacher_name", teacher_name)
def replace_three_page(prs, info_dict, me_image):
"""替换第三页信息"""
# 使用字典解包传递多个字段,减少参数数量
fields = ["name", "english_name", "sex", "birthday", "zodiac", "friend", "hobby", "game", "food"]
for field in fields:
replace_text_in_slide(prs, 2, field, info_dict.get(field, ""))
if me_image:
replace_picture(prs, 2, "me_image", me_image)
else:
logger.warning(f"⚠️ 警告: {info_dict.get('name', '未知姓名')} 缺少个人照片('me_image'")
def replace_four_page(prs, class_image):
"""替换第四页信息"""
replace_picture(prs, 3, "class_image", class_image)
def replace_five_page(prs, image1, image2):
"""替换第五页信息"""
replace_picture(prs, 4, "image1", image1)
replace_picture(prs, 4, "image2", image2)