融合门户




import json
from pptx import Presentation
# 加载门户系统的JSON数据
with open('data.json', 'r') as f:
data = json.load(f)
# 打开现有的PPTX文件
prs = Presentation('template.pptx')
# 遍历每一页幻灯片并插入数据
for slide_num, slide in enumerate(prs.slides):
# 获取幻灯片上的文本框
for shape in slide.shapes:
if shape.has_text_frame:
for paragraph in shape.text_frame.paragraphs:
for run in paragraph.runs:
# 替换占位符
run.text = run.text.replace('{{data}}', str(data.get(f'data_{slide_num}', 'No Data')))
# 保存新的PPTX文件
prs.save('output.pptx')
]]>