python自动做ppt,python操作ppt的模块

  python自动做ppt,python操作ppt的模块

  本文将详细介绍Python中PPT段落的一些用法:获取段落、给段落添加内容、自定义段落等。本文中的示例代码解释的很详细,有需要的可以参考一下。

  

目录
PPT段落的使用获取段落,添加内容,在段落中定义多个段落,自定义段落。在上一章中,我们学习了定义PPT的基本方法和每个页面的样式。在这节课中,我们将真正地在PPT中添加内容,并学习如何使用pptx的段落。

  

PPT 段落的使用

  打开本课的学习,卷!

  

获取段落

  既然是获取段落,那就意味着有已有的段落,从一开始就以某种样式存在。

  步骤1:定义ppt对象

  Ppt=Presentation()通过Presentation()实例化一个Ppt对象(Presentation可以通过python-pptx直接使用)

  第二步:选择款式。

  Layout=ppt.slide_layout[1]此处选择样式1,包含标题和段落。

  第三步:演示插入PPT生成一页PPT。

  slide=ppt . slides . add _ slide(layout)通过slides.add_slide(layput)函数传入布局,会生成一页PPT。

  第四步:获取段落。

  Placeholder=slide . placeholder[1]通过placeholder()函数获取当前PPT中的段落(因为我们选择的style 1有两个小段落内容,一个是标题,一个是内容。所以我们真正获取内容的段落是占位符[1],返回一个占位符对象,就是段落。)

  

段落添加内容

  Placeholder.text=new content通过Placeholder对象的text方法输入一些字符串,生成段落的内容。

  代码示例如下:

  #编码:utf-8

  导入pptx

  Ppt=pptx。Presentation() #生成ppt对象

  Layout=ppt.slide_layouts[1] #选择布局1

  slide=ppt.slides.add_slide(布局)

  Title=slide.placeholders[0] #获取标题

  placeholder=slide . placeholders[1]#获取内容

  Title.text=这是标题

  Placeholder.text=这是第一行段落\ n这是第二行段落

  ppt.save(test2.ppt )

  运行结果如下:

  

段落中定义多个段落

  如果你希望一个段落中的每一行都有自己的风格,你需要为段落中的每一行定义一个新的段落,这样你就可以对每一行进行自我控制。让我们来看看如何在一个段落中定义多个段落:

  paragraph=placeholder . text _ frame . add _ paragraph()

  #可以通过placeholder . text _ frame . add _ paragraph()生成新的段落对象

  这样生成的段落对象可以实现以下功能:

  函数名称描述文本定义内容字体加粗文本加粗字体斜体文本斜体字体大小字体大小对齐段落位置颜色rgb字体颜色字体下划线文本下划线

  代码示例如下:

  

# coding:utf-8

  import pptx

  from pptx.util import Pt

  from pptx.enum.text import PP_PARAGRAPH_ALIGNMENT

  ppt = pptx.Presentation() # 生成ppt对象

  layout = ppt.slide_layouts[1] # 选择布局 1

  slide = ppt.slides.add_slide(layout)

  title = slide.placeholders[0] # 获取title

  placeholder = slide.placeholders[1] # 获取内容

  title.text = "这是title"

  # placeholder.text = "这是第一行段落内容\n这是第二行段落内容"

  paragraph1 = placeholder.text_frame.add_paragraph() # 定义第一个段落的样式

  paragraph1.text = 欢迎学习ppt制作 # 第一个样式段落的内容为 "欢迎学习ppt制作"

  paragraph1.font.bold = True # 第一个样式段落的字体为粗体

  paragraph1.font.italic = True # 第一个样式段落的字体为斜体

  paragraph1.font.size = Pt(16) # 第一个样式段落的字体大小为 16 ;需要 from pptx.util import Pt

  paragraph1.font.underline = True # 第一个样式段落的字体有下划线

  paragraph1.alignment = PP_PARAGRAPH_ALIGNMENT.CENTER # 居中;需 from pptx.enum.text import PP_PARAGRAPH_ALIGNMENT

  paragraph2 = placeholder.text_frame.add_paragraph() # 定义第二个段落的样式

  paragraph2.text = 欢迎学习python # 第二个样式段落的内容为 "欢迎学习python"

  paragraph2.font.size = Pt(32) # 第二个样式段落的字体大小为 32

  paragraph2.alignment = PP_PARAGRAPH_ALIGNMENT.RIGHT # 居右

  ppt.save("test2.ppt")

  

  运行结果如下:

  

  

  

  

自定义段落

  接下来有个问题,上文中定义的段落都是在已存在的布局中去完成的。如果在当前 PPT 页面中没有基础段落,我们又该怎么样去写入段落呢?答案就是接下来要讲的内容了。

  我们可以自定义一个段落,或者说自定义一个文本输入框出来即可。接下来看看如何自定义一个段落:

  box = slide.shapes.add_textbox(left, top, width, height)

  通过 slide.shapes.add_textbox() 定义一个 box 对象。

  left:居左的位置;top:居上的位置;width:当前段落的宽度;height:当前段落的高度。

  left 与 top 结合选择的是选择当前段落所居的目标点;width 与 height 结合则是定义当前段落的宽高度。

  完成这部操作会返回一个 box 对象

  paragraph = box.text_frame.add_paragraph()

  通过 box 对象的 text_frame.add_paragraph() 生成一个段落对象。

  接下来就可以按照段落对象的方式去写入内容了。

  所使用到的新的模块:

  

  • from pptx.util import Inches, Pt 这里的 Inches 模块就是作为 shapes.add_textbox(left, top, width, height) 方法里 left, top, width, height 的函数使用。
  • from pptx.dml.color import RGBColor 对应颜色样式
  • from pptx.enum.text import PP_PARAGRAPH_ALIGNMENT 对段落位移的定义

  ​代码示例如下:

  

# coding:utf-8

  import pptx

  from pptx.util import Pt, Inches

  from pptx.enum.text import PP_PARAGRAPH_ALIGNMENT

  from pptx.dml.color import RGBColor

  ppt = pptx.Presentation() # 生成ppt对象

  layout = ppt.slide_layouts[1] # 选择布局 1

  slide = ppt.slides.add_slide(layout)

  title = slide.placeholders[0] # 获取title

  placeholder = slide.placeholders[1] # 获取内容

  title.text = "这是title"

  # placeholder.text = "这是第一行段落内容\n这是第二行段落内容"

  paragraph1 = placeholder.text_frame.add_paragraph() # 定义第一个段落的样式

  paragraph1.text = 欢迎学习ppt制作 # 第一个样式段落的内容为 "欢迎学习ppt制作"

  paragraph1.bold = True # 第一个样式段落的字体为粗体

  paragraph1.font.italic = True # 第一个样式段落的字体为斜体

  paragraph1.font.size = Pt(16) # 第一个样式段落的字体大小为 16 ;需要 from pptx.util import Pt

  paragraph1.font.underline = True # 第一个样式段落的字体有下划线

  paragraph1.alignment = PP_PARAGRAPH_ALIGNMENT.CENTER # 居中;需 from pptx.enum.text import PP_PARAGRAPH_ALIGNMENT

  paragraph2 = placeholder.text_frame.add_paragraph() # 定义第二个段落的样式

  paragraph2.text = 欢迎学习python # 第二个样式段落的内容为 "欢迎学习python"

  paragraph2.font.size = Pt(32) # 第二个样式段落的字体大小为 32

  paragraph2.alignment = PP_PARAGRAPH_ALIGNMENT.RIGHT # 居右

  layout = ppt.slide_layouts[6] # 定义布局,使用样式 6 (样式6 只有一个title)

  slide = ppt.slides.add_slide(layout)

  left = top = width = height = Inches(5) # 定义 box 对象的位置与宽高

  box = slide.shapes.add_textbox(left, top, width, height) # 实例化一个 box 对象

  para = box.text_frame.add_paragraph() # 定义一个段落对象

  para.text = this is a para test # 自定义段落对象写入段落内容

  para.alignment = PP_PARAGRAPH_ALIGNMENT.CENTER # 居中

  para.font.size = Pt(38) # 设置字体大小

  para.font.color.rgb = RGBColor(255, 0, 0) # 设置颜色

  para.font.name = 微软雅黑 # 设置字体

  ppt.save("test2.ppt")

  

  运行结果如下:

  

  

  到此这篇关于Python自动化办公之PPT段落的使用的文章就介绍到这了,更多相关Python PPT段落内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: