pptx库
官方链接>>>https://python-pptx.readthedocs.io/en/latest/index.html
要很注意对象关系,其他还行.
在ppt中所有的元素均被当成shape,slide.shapes表示幻灯片类中的模型类,placeholders中为每个模型。
Placeholders占位符:可以将内容放入其中的预格式化容器。
pptx.presentation.Presentation pptx:文件对象.
pptx.slide.SlideLayout:版式对象.
Pptx.slide.Slides:总幻灯片对象.
Pptx.slide.Slide:幻灯片对象.
形状对象有很多,其中总形状对象包含了占位符和其他形状.
Pptx.shapes.shapetree.SlideShapes:总形状对象.
因为总形状对象包含了占位符和其他形状,所以当你使用(幻灯片对象.shapes)时,会返回一个总形状对象,总形状对象,可以通过迭代(遍历),或者直接转换成列表(会返回多个形状的对象以列表的形式返回),其实也和总幻灯片对象类似。
图片可以看出,我先定义文件对象,然后让文件对象应用获取总幻灯片对象的函数,重点在于什么?我可以通过索引去获取我想要的幻灯片对象.
你看,我可以用(文件对象.slides)就是文件对象,本身具有的函数,来获取到总幻灯片对象,为什么叫总幻灯片?因为你可以通过遍历来获取到幻灯片对象,因为在一个文件里面,会有多个幻灯片,也可以通过列表的函数,进行转换。
为什么这个对象可以遍历?
因为在这里面,我具有__iter__则可以称为可迭代对象,如果具有__iter__、__next__则可以称为迭代器,至于怎么写,自己找一下吧,反正我会就行。
现在你知道了幻灯片对象,类似的,幻灯片里面还有很多形状对象,也就是说,一个幻灯片里面有一个或多个形状对象。
我会让图片表达的更加清楚一下。
我只截图了一小段,要不然难看清楚。
看到了吧?我在总形状对象里面,会有很多不同的形状对象。(至于为什么,看上面吧!!)
相同的,我可以通过遍历或者列表进行输入,为什么要一直说这个是可遍历以及是列表的形式返回吗?因为我可以通过索引等一些东西,去获取到我想要的东西。假设我要总对象里面的第三个,我可以通过索引(2)获取到此对象,然后对此对象进行展开。
pptx.shapes.placeholder.SlidePlaceholder:幻灯片文本对象.
幻灯片文本对象干嘛的?
用来写入一些文字内容,一个幻灯片文本对象,相当于一个小型的word,分段落、文字块
简单说,就是可以写一下文字,巴拉巴拉的说一堆。
图片的第三个是表格对象。
有了表格对象,我就可以引用工作薄里面的内容,对吧,这里面涉及了word文档、工作薄文档,这都懂了,其他简简单单啦。
文件对象里面会有多个幻灯片对象,相对的,幻灯片对象也可能会有一个或多个形状。
PPT文件(Presentation)、幻灯片页(slide)、shape(形状)
所以可以知道
|||
- (文件对象.slides)=总幻灯片对象。
- (幻灯片对象.shapes) = 形状对象。(幻灯片中的形状树(包含占位符))
占位符:slide.shapes是访问ppt里面所有的形状(包含占位符和其他形状)称为形状树.
根据以上可知:slide.shapes 幻灯片中的树形状(包含占位符).
slide.placeholders 幻灯片中的占位符.
占位符有很多个.
1、
SlideShapes对象是Slide的形状属性 = pptx.shapes.shapetree.SlideShapes;支持索引访问,len(),index()和迭代。
2、
GroupShapes对象遇到的对象是shapes属性GroupShape = pptx.shapes.shapetree.GroupShapes;属于组形状的子形状的序列。
请注意,此集合本身可以包含组形状,从而使刻部分成为递归树数据结构(非循环图)。
3、
一般形状对象 = pptx.shapes.base.BaseShape形状对象的基类。子类包括Shape,Picture,GraphicFrame。
4、
Shape对象(自选图形) = pptx.shapes.autoshape.Shape为自选图形定义了一下属性和方法,其中包括文本框和占位符。可以出现在幻灯片上的形状。
对应于<p:sp>可以出现在任何幻灯片类型的部分中的元素(slide,slideLayout,slideMaster,notesPage,notesMaster,handoutMaster)。
5、
AdjustmentCollection对象 = pptx.shapes.autoshape.AdjustmentCollection(PrstGeom)
自选图形的独特之处在于它可以进行调整,在PowerPoint用户界面中以小黄色菱形表示,每个菱形均允许调整形状参数.