|
|
|
@ -0,0 +1,50 @@
|
|
|
|
|
from D1_GenerateMarkdown import *
|
|
|
|
|
from D2_MarkdownToPptx import *
|
|
|
|
|
from D3_MarkdownToDocx import *
|
|
|
|
|
|
|
|
|
|
# 获取课程名称
|
|
|
|
|
def get_course_name() -> str:
|
|
|
|
|
"""获取规范格式的课程名称"""
|
|
|
|
|
prompt = '''功能:输入课程名称生成教案及课件,请按以下格式输入:
|
|
|
|
|
(示例:小学数学三角形内角和)
|
|
|
|
|
请输入:'''
|
|
|
|
|
|
|
|
|
|
while True:
|
|
|
|
|
course = input(prompt).strip()
|
|
|
|
|
if course:
|
|
|
|
|
return course
|
|
|
|
|
print("⚠️ 输入不能为空,请重新输入!")
|
|
|
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
|
# 获取课程名称
|
|
|
|
|
course_name = get_course_name()
|
|
|
|
|
print(f"即将生成【{course_name}】教学大纲...")
|
|
|
|
|
|
|
|
|
|
guid_v4 = str(uuid.uuid4())
|
|
|
|
|
dashscope.api_key = MarkdownGenerator.API_KEY
|
|
|
|
|
generate_document(
|
|
|
|
|
course_name=course_name,
|
|
|
|
|
output_path=mdWorkingPath / (guid_v4 + '.md')
|
|
|
|
|
)
|
|
|
|
|
# 生成PPT
|
|
|
|
|
# 硬编码配置参数
|
|
|
|
|
FIXED_MD_PATH = str(mdWorkingPath) + '/' + guid_v4 + '.md'
|
|
|
|
|
# 模板名称
|
|
|
|
|
TEMPLATE_NAME = "通用"
|
|
|
|
|
# 输出路径
|
|
|
|
|
OUTPUT_PATH = "D:\dsWork\QingLong\output5.pptx"
|
|
|
|
|
|
|
|
|
|
# 执行生成
|
|
|
|
|
generate(TEMPLATE_NAME, OUTPUT_PATH, FIXED_MD_PATH)
|
|
|
|
|
print(f"PPT生成成功!保存路径:{OUTPUT_PATH}")
|
|
|
|
|
|
|
|
|
|
# 生成 DOCX
|
|
|
|
|
OUTPUT_DOCX = r"D:\dsWork\QingLong\output5.docx"
|
|
|
|
|
convert_md_to_docx(
|
|
|
|
|
input_md=FIXED_MD_PATH,
|
|
|
|
|
output_docx=OUTPUT_DOCX,
|
|
|
|
|
reference_template=r"D:\dsWork\QingLong\AI\left-aligned-template.docx"
|
|
|
|
|
)
|
|
|
|
|
print(f"DOCX生成成功!保存路径:{OUTPUT_DOCX}")
|
|
|
|
|
# 删除FIXED_MD_PATH
|
|
|
|
|
os.remove(FIXED_MD_PATH)
|