未完成对于表格的样式调整,后续改进
##作业
##打开作业模板.pptx
##参考作业最终成果.pptx的最终效果
##以编程的方式从模板文件来复现最终效果
from pptx import Presentation
from pptx.enum.text import MSO_ANCHOR, MSO_AUTO_SIZE
from pptx.dml.color import RGBColor
from pptx.util import Cm,Pt
from openpyxl import load_workbook
prs=Presentation('123.pptx')
slide=prs.slides[0]
shapes=slide.shapes
##for shape in slide.placeholders:
## phf=shape.placeholder_format
## shape.text=f'{phf.idx}--{phf.type}'
##idx=0=财务信息
##idx=1=OREM IPSUM DOLOR SIT AMET, CONSECTETUER ADIPISCING ELIT.MAECENAS PORTTITOR
slide.placeholders[0].text='财务信息'
slide.placeholders[1].text='OREM IPSUM DOLOR SIT AMET, CONSECTETUER ADIPISCING ELIT.MAECENAS PORTTITOR'
##添加右下角文本框
left=Cm(27.82)
top=Cm(16.33)
width=Cm(3.71)
height=Cm(0.83)
text_box=slide.shapes.add_textbox(left,top,width,height)
tf=text_box.text_frame
tf.text='20XX 年 MM 月 DD 日'
for paragraph in tf.paragraphs:
paragraph.font.size=Pt(10)
paragraph.font.name='Microsoft YaHei UI'
paragraph.font.color.rgb=RGBColor(128,129,127)
#创建表格 table idx=14
rows,cols=14,5
width=Cm(18.09)
height=Cm(14.79)
left=Cm(12.3)
top=Cm(1.3)
table=shapes.add_table(rows,cols,left,top,width,height).table
print(type(table))
#填写表格
data=[]
wb=load_workbook('第四节课作业表格.xlsx')
ws=wb.active
for cell in ws['A']:
row=[ws[f'A{cell.row}'].value,ws[f'B{cell.row}'].value,ws[f'C{cell.row}'].value,ws[f'D{cell.row}'].value,ws[f'E{cell.row}'].value]
data.append(row)
##print(data)
for row in range(rows):
for col in range(cols):
table.cell(row,col).text=str(data[row][col])
##
prs.save('234.pptx')