办公自动化-ppt的创建实操-各个对象的理解-0223
对象关系汇总
目标
来一个幻灯片的生成
安装模块
pip install python-pptx
认识三个对象
import pptx# ppt文档对象
ppt = pptx.Presentation()
# 幻灯片容器
slides = ppt.slides
# 获得一个版式
page = ppt.slide_layouts[1]
slide_layouts[1]为带标题和正文框的ppt,slide_layouts[6]为空白页ppt
演示文档容器添加一页
import pptx# ppt文档对象
ppt = pptx.Presentation()
# 演示文档容器
slides = ppt.slides
# 获得一个版式
layout1 = ppt.slide_layouts[1]
# 容器添加一个版式
print(len(slides))
slides.add_slide(layout1)
print(len(slides))
文件的保存
ppt.save('test.pptx')
版式为2时
import pptx# ppt文档对象
ppt = pptx.Presentation()
# 演示文档容器
slides = ppt.slides
# 获得一个版式
layout1 = ppt.slide_layouts[2]
# 容器添加一个版式
print(len(slides))
slides.add_slide(layout1)
print(len(slides))ppt.save('test2.pptx')
版式的规律寻找
对着演示来看,一共十一个
我们试试序号七的结构,验证一下猜测
版式七的效果
与猜测相符
获得所有的文本框
版式一有两个占位符
占位符添加内容
import pptx# ppt文档对象
ppt = pptx.Presentation()
# 演示文档容器
slides = ppt.slides
# 获得一个版式
layout1 = ppt.slide_layouts[1]
# 容器添加一个版式
page = slides.add_slide(layout1)
# 获得所有的占位符
placeholders = page.shapes.placeholders
# 给占位符添加内容
placeholders[0].text = '这是标题的位置'
placeholders[1].text = '这是正文的内容/n可以吗'ppt.save('test1.pptx')
标题是一个占位符
标题占位符的两种对象获取方式
文本框对象与段落对象
占位符对象具有文本框对象
文本框里面可以有多个段落
让正文占位符里有多个文本对象
import pptx
from pptx.util import Pt# ppt文档对象
ppt = pptx.Presentation()
# 演示文档容器
slides = ppt.slides
# 获得一个版式
layout1 = ppt.slide_layouts[1]
# 容器添加一个版式
page = slides.add_slide(layout1)
# 获得所有的占位符
placeholders = page.shapes.placeholders
# 给占位符添加内容
placeholders[0].text = '这是标题的位置'
placeholders[1].text = '这是正文的内容'
# 文本框对象(占位符一的)
text_frame = placeholders[1].text_frame
# 段落对象(文本框的)
paragraph = text_frame.add_paragraph()
paragraph2 = text_frame.add_paragraph()
# 给段落对象添加内容
paragraph.text = '第一个段落内容'
paragraph2.text = '第二个段落内容'
# 段落的样式
paragraph.font.bold = True
paragraph2.font.size = Pt(15)
paragraph2.font.underline = Trueppt.save('test1.pptx')
文本框对象的演练
代码
import pptx# ppt文档对象
from pptx.util import Pt, Inchesppt = pptx.Presentation()
# 演示文档容器
slides = ppt.slides
# 获得一个版式
layout1 = ppt.slide_layouts[1]
# 容器添加一个版式
page = slides.add_slide(layout1)
# 获得所有的占位符
placeholders = page.shapes.placeholders
# 给占位符添加内容
placeholders[0].text = '这是标题的位置'
placeholders[1].text = '这是正文的内容'
# 文本框对象(占位符一的)
text_frame = placeholders[1].text_frame
# 段落对象(文本框的)
paragraph = text_frame.add_paragraph()
paragraph2 = text_frame.add_paragraph()
# 给段落对象添加内容
paragraph.text = '第一个段落内容'
paragraph2.text = '第二个段落内容'
# 段落的样式
paragraph.font.bold = True
paragraph2.font.size = Pt(15)
paragraph2.font.underline = True
# 文本框对象
left = Inches(6) # 左
top = Inches(2) # 顶
width = Inches(4) # 宽
height = Inches(4) # 高
textbox = page.shapes.add_textbox(left,top,width,height)
# 文本框的内容
# textbox.text = "这是文本框的内容这是文本框的内容这是文本框的内容"
# 文本框的段落
para = textbox.text_frame.add_paragraph()
para.text = "文本框的段落内容文本框的段落内容文本框的段落内容文本框的段落内容"ppt.save('test222.pptx')
存在的问题
虽然给文本框设定了一个宽度和高度,但是里面的内容仍然会超出它的边界,这个问题需要解决
办公自动化-ppt的创建实操-各个对象的理解-0223相关推荐
- 云原生docker容器创建实操
创建容器实操 以flame导航主页为例 1.下载(拉取)flame镜像文件 在https://hub.docker.com搜索框中搜索flame 可以看见右侧有docker pull command拉 ...
- html实现ppt缩放效果,实操教程:如何快速实现PPT中图片局部放大效果?
精选君说:有常常有人在后台说,PPT精选君推荐的教程都是理论为主的,或者推荐的好的资源都不提供源文件了,需要说明下: 1.精选君认为理论和实践之间,唯一的差别就是动不动手做. 2.不提供源文件是我真的 ...
- 实操代码带你理解CSS中的常用选择器(你值得掌握!)
在CSS中,我们要给一个元素定义样式,首先得把这个元素选出来,我在网上看了很多文章,再结合老师所讲的精华部分将平时比较常用的选择器整理出来分享给大家,哈哈哈一起学习一起进步! https://blog ...
- oracle表分区实操训练
关于网上oracle表分区介绍的的文档有很多(不过大概看了下基本都是一个模板刻出来的),看完后自己实际操练了下,虽然以前的项目中也用过,但是自己并没有参与弄过,今天就在本机的库上爽了一把. 操练环境: ...
- 实操案例:机智云调试APP控制云端虚拟设备
本文通过<机智云调试APP控制云端虚拟设备>实操案例,快速理解和体验机智云接入服务,完成新手入门. 机智云自助开发平台 机智云自助开发平台提供一套模拟软件开发工具,其中包括虚拟设备和机智云 ...
- Python—实操小实验之人机PK游戏(终极版本—应用类与对象的知识点应用)
Python-实操小实验之人机PK游戏(终极版本-应用类与对象的知识点应用) 人机PK游戏所需要的基础元素如下: ①要有玩家.敌人.生命值.攻击力,还要有计分: ②要可以互相进行攻击,攻击之后生命值要 ...
- 3-8 基于SpringBoot连接数据库与配置MyBatis实操 创建表sql
11 13-8 基于SpringBoot连接数据库与配置MyBatis实操 springSecurity提供了 现成的基于内存管理的类 shiro则必须自 ...
- 昆明计算机ppt培训机构,师友互助实操培训(昆明)ppt课件.ppt
<师友互助实操培训(昆明)ppt课件.ppt>由会员分享,可在线阅读,更多相关<师友互助实操培训(昆明)ppt课件.ppt(27页珍藏版)>请在人人文库网上搜索. 1.师友互助 ...
- 库卡机器人坐标手势_实操:KUKA机器人创建工具坐标数据
原标题:实操:KUKA机器人创建工具坐标数据 使用机器人示教器设定工具 图8-8 通过一个固定参考点的工具坐标系的测量分为2步:首先确定工具坐标系的TCP点,然后确定工具坐标系的姿态如表8-7所示. ...
最新文章
- CS研究笔记-缓存 (转)
- Facebook的一些基本操作(网页版)
- 初中英语八下单词表(SuperMemo QA文本格式)
- oracle 获得月最后一天,oracle获取本月第一天和最后一天及Oracle trunc()函数的用法...
- 专门用于微信公众平台的Javascript API
- Atitit 理解Monad attilax总结
- .NET 3.5 - DLINQ(LINQ to SQL)之面向对象的添加、查询、更新和删除
- Spring : Importxxx系列注解
- 这些优化 Drupal 网站速度的超简单办法,你忽略了多少?
- JavaScript中String的replace函数
- linux 软件装哪个目录下,Linux查看软件安装目录及位置 方法
- PVE安装Linux提示:error: /vmlinuz has invalid signature.
- android测试云模拟器,基于Android模拟器的调研
- 智能配电房综合监控系统的探讨
- python出入库_基于Python对Excel数据入库的处理
- 3D打印行业入行总结
- 元转万元单位换算_excel数值单位转换-----元与万元、千元、百元的转换
- Linux命令之新增组groupadd
- Limbo模拟器的三两事
- 443端口是什么,如何启用?
热门文章
- ubuntu18.04如何安装mysql
- layui进度条:调用、参数设置、动态渲染、数据热更新 (含案例、代码)
- 百度地图demo基础组件演示
- Smart Slider 3 Pro高级轮播插件绿色版 附200多模版[更新至v3.5.0.5]
- 仿码支付全新免签支付系统源码
- 让网站变成灰色插件 可以设定特殊时间
- 计算机并行处理专业,分布式计算机并行处理技术(论文).doc
- win2k 修改时间服务器,Win2K服务器端设置教程 第四节 WWW服务器的设置(上)
- 知识付费阅读小程序源码,前端+后台+代理+分销
- 超好看的B站首页顶部景深动态特效源码