随笔 - 258  文章 - 0  评论 - 0  阅读 - 32220

python生成荣誉证书

复制代码
from pptx import Presentation
prs = Presentation('data\荣誉证书模板.pptx')
slide = prs.slides.add_slide(prs.slide_layouts[0]) # 第一个模板的第0个板式
for ph in slide.placeholders: #遍历这页PPT的所有占位符
    phf = ph.placeholder_format #获取占位符的格式
    print(phf.idx) #打印其ID编号
    ph.text = str(phf.idx)# 将编号写入PPT对应的位置中,以便后面一一对应
# 以上读取到占位符的ID方便后面调用
prs.save('data\荣誉证书模板-占位符编号.pptx')

from openpyxl import load_workbook
wb = load_workbook("data\名单.xlsx")
ws = wb.active
data={}
for row in range(2,ws.max_row+1):
    class_id = ws['A' + str(row)].value
    name = ws['B' + str(row)].value 
    data.setdefault(class_id,[])
    data[class_id].append(name)


import time
t0=time.time()# 程序开始运行的时间

prs = Presentation('data\荣誉证书模板.pptx')
slide_layout = prs.slide_layouts[0] #调用设置好的母版,因为是母版的第一版式,所以取[0]
for class_id in data:
    for name in data[class_id]:
        slide = prs.slides.add_slide(slide_layout) #以母版的版式为基础新增一页幻灯片
        #往幻灯片中写入内容
        slide.placeholders[10].text = "{} 班 {} 同学:".format(class_id,name) #此处是班级和姓名
        slide.placeholders[11].text = "在2021-2022学年度第一学期获得"
        slide.placeholders[12].text = "“三好学生”称号。"
        slide.placeholders[13].text = "特发此证,以资鼓励。"
        slide.placeholders[14].text = "std"
        slide.placeholders[15].text = "2021年12月"
prs.save('data\荣誉证书(总).pptx')
t1 = time.time()

print('程序用时:',str(round(t1-t0))+'秒。')
复制代码

 

from pptx import Presentationprs = Presentation('data\荣誉证书模板.pptx')slide = prs.slides.add_slide(prs.slide_layouts[0]) # 第一个模板的第0个板式for ph in slide.placeholders: #遍历这页PPT的所有占位符    phf = ph.placeholder_format #获取占位符的格式    print(phf.idx) #打印其ID编号    ph.text = str(phf.idx)# 将编号写入PPT对应的位置中,以便后面一一对应# 以上读取到占位符的ID方便后面调用prs.save('data\荣誉证书模板-占位符编号.pptx')
from openpyxl import load_workbookwb = load_workbook("data\名单.xlsx")ws = wb.activedata={}for row in range(2,ws.max_row+1):    class_id = ws['A' + str(row)].value    name = ws['B' + str(row)].value     data.setdefault(class_id,[])    data[class_id].append(name)

import timet0=time.time()# 程序开始运行的时间
prs = Presentation('data\荣誉证书模板.pptx')slide_layout = prs.slide_layouts[0] #调用设置好的母版,因为是母版的第一版式,所以取[0]for class_id in data:    for name in data[class_id]:        slide = prs.slides.add_slide(slide_layout) #以母版的版式为基础新增一页幻灯片        #往幻灯片中写入内容        slide.placeholders[10].text = "{} 班 {} 同学:".format(class_id,name) #此处是班级和姓名        slide.placeholders[11].text = "在2019-2020学年度第一学期获得"        slide.placeholders[12].text = "“好孩子”称号。"        slide.placeholders[13].text = "特发此证,以资鼓励。"        slide.placeholders[14].text = "市幼儿园"        slide.placeholders[15].text = "2020年1月"prs.save('data\荣誉证书(总).pptx')t1 = time.time()
print('程序用时:',str(round(t1-t0))+'秒。')

posted on   季昂  阅读(435)  评论(0编辑  收藏  举报
编辑推荐:
· 大模型 Token 究竟是啥:图解大模型Token
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
阅读排行:
· BotSharp + MCP 三步实现智能体开发
· BotSharp 5.0 MCP:迈向更开放的AI Agent框架
· 5. RabbitMQ 消息队列中 Exchanges(交换机) 的详细说明
· 设计模式脉络
· 【ESP32】两种模拟 USB 鼠标的方法
< 2025年4月 >
30 31 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 1 2 3
4 5 6 7 8 9 10

点击右上角即可分享
微信分享提示