python-pptx 实践 4:添加形状、文本


1、添加流程箭头

# 加载库
import os from pptx import Presentation from pptx.util import Inches, Pt from pptx.enum.text import PP_ALIGN from pptx.enum.shapes import MSO_SHAPE from pptx.dml.color import RGBColor# 设置路径
work_path = r'E:\pyspace\tmp\pptx' os.chdir(work_path) # 实例化 ppt 文档对象
prs = Presentation() # 插入幻灯片
title_only_slide = prs.slide_layouts[5] slide_1 = prs.slides.add_slide(title_only_slide) shapes = slide_1.shapes shapes.title.text = '煮鸡蛋的步骤' left = Inches(0.7) top = Inches(2) width = Inches(2) height = Inches(1) for n in range(1, 6): # 添加箭头形状
    shape = shapes.add_shape(autoshape_type_id=MSO_SHAPE.CHEVRON,    # v 形箭头
                             left=left, top=top, width=width, height=height) shape.text = 'Step %d' % n    # 文本颜色默认为白色,位于形状中心
    
    # 添加文本框
    textbox = shapes.add_textbox(left=left, top=top+height+Inches(0.3), width=width, height=Inches(4) ) tf = textbox.text_frame para = tf.add_paragraph() para.text = 'do\n\n\n something' para.alignment = PP_ALIGN.CENTER  # 居中
    # 设置字体属性
    font = para.font font.size = Pt(24)    # 大小
    font.name = 'Arial'    # 字体
    font.bold = True    # 加粗
    font.italic = True  # 倾斜
    font.color.rgb = RGBColor(225, 225, 0)  # 黄色
    
    # 更新位置参数
    left = left + width - Inches(0.3) # 保存 ppt
prs.save('test.pptx')

效果:

 

 35 种不同 autoshape_type_id 参数对应的形状

1、autoshape_type_id= MSO_SHAPE.ARC

2、 autoshape_type_id= MSO_SHAPE.BALLOON

3、autoshape_type_id= MSO_SHAPE.BEVEL

4、autoshape_type_id= MSO_SHAPE.CAN

5、autoshape_type_id= MSO_SHAPE.CHEVRON

6、autoshape_type_id= MSO_SHAPE.CHORD

7、autoshape_type_id= MSO_SHAPE.CLOUD

8、autoshape_type_id= MSO_SHAPE.CLOUD_CALLOUT

 9、autoshape_type_id= MSO_SHAPE.CUBE

 10、 autoshape_type_id= MSO_SHAPE.CURVED_DOWN_RIBBON

  11、autoshape_type_id= MSO_SHAPE.CURVED_UP_RIBBON

12、autoshape_type_id= MSO_SHAPE.DECAGON

13、autoshape_type_id= MSO_SHAPE.DIAMOND

14、autoshape_type_id= MSO_SHAPE.DOUBLE_WAVE

  15、autoshape_type_id= MSO_SHAPE.DOWN_ARROW

 16、autoshape_type_id= MSO_SHAPE.EXPLOSION1

17、autoshape_type_id= MSO_SHAPE.FLOWCHART_CONNECTOR

18、autoshape_type_id= MSO_SHAPE.FLOWCHART_DECISION

 19、autoshape_type_id= MSO_SHAPE.FLOWCHART_DIRECT_ACCESS_STORAGE

 20、autoshape_type_id= MSO_SHAPE.FLOWCHART_DOCUMENT

 21、 autoshape_type_id= MSO_SHAPE.FLOWCHART_MAGNETIC_DISK

 22、autoshape_type_id= MSO_SHAPE.FLOWCHART_MULTIDOCUMENT

 23、autoshape_type_id= MSO_SHAPE.FLOWCHART_PUNCHED_TAPE

24、autoshape_type_id= MSO_SHAPE.FLOWCHART_STORED_DATA

 25、autoshape_type_id= MSO_SHAPE.FUNNEL

 26、autoshape_type_id= MSO_SHAPE.HEART

27、autoshape_type_id= MSO_SHAPE.MOON

28、autoshape_type_id= MSO_SHAPE.OVAL

 29、autoshape_type_id= MSO_SHAPE.OVAL_CALLOUT

30、autoshape_type_id= MSO_SHAPE.SMILEY_FACE

31、autoshape_type_id= MSO_SHAPE.STAR_5_POINT

 32、autoshape_type_id= MSO_SHAPE.STAR_6_POINT

33、autoshape_type_id= MSO_SHAPE.SUN

 34、 autoshape_type_id= MSO_SHAPE.TEAR

  35、autoshape_type_id= MSO_SHAPE.WAVE

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM