当前位置:  首页>> 技术小册>> Python与办公-玩转PPT

设置文本的样式可以分为设置文本框的样式和设置文本本身的样式,我们先来讲一下后者吧,毕竟我们刚接触了比较熟悉的段落,气氛都烘托到这里了不学习一下就是不给面子。

设置文本的样式无非是设置段落的样式和Run的样式,对段落的样式应该还算熟悉吧。python-pptx的Paragraph对象主要有段落对齐、行间距、段前段后距离等相关属性,看一下代码吧:

  1. from pptx import Presentation
  2. from pptx.enum.text import PP_PARAGRAPH_ALIGNMENT
  3. from pptx.util import Pt
  4. ppt = Presentation()
  5. slide = ppt.slides.add_slide(ppt.slide_layouts[0])
  6. shape = slide.shapes[0]
  7. paragraph = shape.text_frame.paragraphs[0]
  8. paragraph.clear() # 清空段落文本
  9. paragraph.text = "Of fice遇到了Python\nOf fice meets Python"
  10. # 段落对齐
  11. paragraph.alignment = PP_PARAGRAPH_ALIGNMENT.LEFT # 居左对齐
  12. # paragraph.alignment = PP_PARAGRAPH_ALIGNMENT.CENTER # 居中对齐
  13. # paragraph.alignment = PP_PARAGRAPH_ALIGNMENT.RIGHT # 居右对齐
  14. # paragraph.alignment = PP_PARAGRAPH_ALIGNMENT.JUSTIFY # 两端对齐
  15. # paragraph.alignment = PP_PARAGRAPH_ALIGNMENT.DISTRIBUTE # 分散对齐
  16. # 段落缩进等级
  17. paragraph.level = 0 # 可选0~8,默认是0级
  18. # 行间距
  19. paragraph.line_spacing = 1.5 # 1.5倍行间距
  20. # paragraph.line_spacing = Pt(50) # 固定值,50磅行间距
  21. # 段前段后距离
  22. paragraph.space_before = Pt(15) # 段前15磅
  23. paragraph.space_after = Pt(20) # 段后20磅
  24. ppt.save("./ppt_ files/test.pptx")

Paragraph对象的text属性控制文本,只要是字符串类型就行了,其他没什么需要注意的。Paragraph对象的alignment属性控制的是段落水平方向的对齐,垂直方向由TextFrame对象控制,这个我们后面再说。水平方向的对齐方式被定义在PP_PARAGRAPH_ALIGNMENT枚举类里,一共有7种,但这里只列举了最常用的五种。

Paragraph对象的level属性控制的是缩进等级,取值范围是0~8,一共9级,默认是顶级,也就是0级,段落缩进一般用在段落前使用项目符号列表等需要缩进的场景。Paragraph对象的line_spacing属性控制段落的行间距,你可以直接指定一个长度距离,比如说Pt(50),表示固定行间距为50磅,如果指定一个数字,就表示倍距,比如说赋值为1.5,表示1.5倍行间距。段前和段后距离分别用space_before和space_after属性控制,也没什么需要注意的,直接指定一个长度距离就行。


该分类下的相关小册推荐: