Python-pptx Presentations

image

使用Presentation()函數(shù)打開一個演示文稿郭宝,該函數(shù)直接由pptx包提供:

from pptx import Presentation

該函數(shù)返回一個Presentation對象跪者,該對象是包含構(gòu)成表示的組件的圖形的根洛巢,
例如 幻燈片坡贺,形狀等小染。通過遍歷圖形來引用所有現(xiàn)有的表示組件翘瓮,
并通過在對象的容器上調(diào)用方法來將新對象添加到圖形中。
因此裤翩,通常不會直接構(gòu)造python-pptx對象资盅。
例:

# 加載一個ppt文件
prs = Presentation('pptx/zf.pptx')

# 第一張幻燈片中的第一個形狀
sp = prs.slides[0].shapes[0]

# 向第一張幻燈片中添加圖片形狀
pic = prs.slides[0].shapes.add_picture('image/bg2.jpg', 100, 100, 100, 100)

Presentation功能

此功能是使用演示文件必須導入的唯一參考。典型用法與許多其他類進行交互踊赠,
但是由于使用其包含對象的屬性或方法訪問它們時呵扛,無需構(gòu)造它們。
class pptx.Presentation(pptx = None )
返回Presentation從pptx加載的對象筐带,其中pptx可以是.pptx文件(字符串)的路徑今穿,
也可以是類似文件的對象。如果 缺少pptx或None烫堤,則將加載內(nèi)置的默認演示文稿“模板”荣赶。

Presentation對象

class pptx.presentation.Presentation
PresentationML(PML)演示文稿凤价。不打算直接構(gòu)造。
使用pptx.Presentation()打開或創(chuàng)建演示文稿拔创。

  • core_properties

擁有此演示文稿的讀取/寫入Dublin Core文檔屬性的CoreProperty實例利诺。

  • notes_master

此演示文稿的NotesMaster實例。如果演示文稿沒有便箋母版剩燥,
則從默認模板創(chuàng)建一個便箋本并將其返回慢逾。每次調(diào)用都返回相同的單個實例。

  • save(file )

將此演示文稿保存到file灭红,其中file可以是文件的路徑(字符串)或類似文件的對象侣滩。

  • slide_height

本演示文稿中的幻燈片高度,以英制公制(EMU)為單位变擒。
如果未定義幻燈片寬度君珠,則返回None。讀/寫娇斑。

  • slide_layouts

屬于此演示文稿的第一個SlideMaster的SlideLayout實例的序列策添。
一個演示文稿可以有多個幻燈片母版,每個母版都有自己的一組布局毫缆。
對于演示文稿只有一個幻燈片母版的常見情況唯竹,此屬性很方便。

  • slide_master

屬于此演示文稿的第一個SlideMaster對象苦丁。
通常浸颓,演示文稿只有一個幻燈片母版。
在這種常見情況下旺拉,此屬性提供了更簡單的訪問产上。

  • slide_masters

屬于此演示文稿的SlideMaster對象的序列

  • slide_width

本演示文稿中的幻燈片寬度,以英語公制單位(EMU)為單位账阻。
如果未定義幻燈片寬度蒂秘,則返回None泽本。讀/寫淘太。

  • slides

slides對象,其中包含此演示文稿中的幻燈片

CoreProperties對象

每個Presentation對象都有一個CoreProperties通過其core_properties屬性訪問的對象规丽,
該屬性提供對文檔的所謂核心屬性的讀/寫訪問蒲牧。
核心屬性是作者,類別赌莺,評論冰抢,content_status,已創(chuàng)建艘狭,標識符挎扰,關鍵字翠订,語言,
last_modified_by遵倦,last_printed尽超,modified,修訂梧躺,主題似谁,標題和版本。

每個屬性是str掠哥,datetime.datetime或int這三種類型之一巩踏。
字符串屬性的長度限制為255個字符,如果未設置续搀,則返回一個空字符串(‘’)塞琼。
日期屬性被分配并作為沒有時區(qū)的datetime.datetime對象返回,即在UTC中禁舷。
任何時區(qū)轉(zhuǎn)換均由客戶負責屈梁。 如果未設置,日期屬性將返回無榛了。

python-pptx不會自動設置任何文檔核心屬性在讶,
除非將核心屬性部分添加到不包含該屬性的演示文稿中(非常少見)。
如果python-pptx添加了核心屬性部分霜大,則它包含標題构哺,last_modified_by,
修訂版和修改后屬性的默認值战坤。如果需要該行為曙强,
客戶端代碼應顯式更改諸如revend和last_modified_by之類的屬性。

class pptx.opc.coreprops.CoreProperties

  • author

string –主要負責制作資源內(nèi)容的實體途茫。

  • category

string –此軟件包內(nèi)容的分類碟嘴。值示例包括:簡歷,信函囊卜,財務預測娜扇,提案或技術演示。

  • comments

string –資源內(nèi)容的帳戶栅组。

  • content_status

string –文檔的完成狀態(tài)雀瓢,例如“草稿”

  • created

datetime –最初創(chuàng)建文檔的時間

  • identifier

string –在給定上下文(例如ISBN)中對資源的明確引用。

  • keywords

string –描述性詞或短短語可能會用作本文檔的搜索詞

  • language

string -文檔所用的語言

  • last_modified_by

string –上次修改文檔的人的姓名或其他標識符(例如電子郵件地址)

  • last_printed

datetime –文檔上次打印的時間

  • modified

datetime –文檔上次修改的時間

  • revision

int –此修訂版的編號玉掸,每次保存文檔時刃麸,PowerPoint?客戶端將其遞增一次。
但是請注意司浪,版本號不會由python-pptx自動增加泊业。

  • subject

string –資源內(nèi)容的主題把沼。

  • title

string –給資源的名稱。

  • version

string –自由格式的字符串

Note

# !/usr/bin/python
# coding:utf-8
from pptx import Presentation
import sys
# 加載一個ppt文件
prs = Presentation('pptx/zf.pptx')

# 在第一張幻燈片中獲得對第一個形狀的引用
sp = prs.slides[0].shapes[0]

# 向第一張幻燈片中添加圖片形狀
pic = prs.slides[0].shapes.add_picture('image/bg2.jpg', 100, 100, 100, 100)

# 此演示文稿的NotesMaster實例吁伺。如果演示文稿沒有便箋母版智政,
則從默認模板創(chuàng)建一個便箋本并將其返回。每次調(diào)用都返回相同的單個實例箱蝠。
note = prs.notes_master

# 本演示文稿中的幻燈片高度续捂,以英制公制(EMU)為單位。
None如果未定義幻燈片寬度宦搬,則返回牙瓢。讀/寫。
height = prs.slide_height

# 屬于此演示文稿的第一個SlideMaster的SlideLayout實例的序列间校。 
一個演示文稿可以有多個幻燈片母版矾克,每個母版都有自己的一組布局。 
對于演示文稿只有一個幻燈片母版的常見情況憔足,此屬性很方便胁附。
layouts = prs.slide_layouts

# 屬于此演示文稿的第一個SlideMaster對象。 
通常滓彰,演示文稿只有一個幻燈片母版控妻。 
在這種常見情況下,此屬性提供了更簡單的訪問揭绑。
master = prs.slide_master

# 屬于此演示文稿的SlideMaster對象的序列
masters = prs.slide_masters

# 本演示文稿中的幻燈片寬度弓候,以英語公制單位(EMU)為單位。
如果未定義幻燈片寬度他匪,則返回None菇存。讀/寫。
width = prs.slide_width

# slides對象邦蜜,其中包含此演示文稿中的幻燈片
slides = prs.slides

# 每個Presentation對象都有一個CoreProperties通過其core_properties屬性訪問的對象依鸥,
該屬性提供對文檔的所謂核心屬性的讀/寫訪問
core_properties = prs.core_properties

core_properties.author = 'HaI'
core_properties.category = 'python-pptx'
core_properties.comments = 'HaI\'s comments'
core_properties.content_status = "draft"
core_properties.identifier = 'HaI\'s identifier'
core_properties.keywords = 'HaI\'s keywords'
core_properties.language = 'utf-8'
core_properties.last_modified_by = 'HaI\'s last_modified_by'
core_properties.subject = 'HaI\'s subject'
core_properties.title = 'HaI\'s title'
core_properties.version = 'v1.0.0'

# string –主要負責制作資源內(nèi)容的作者。
author = core_properties.author
# string –此軟件包內(nèi)容的分類悼沈。值示例包括:簡歷贱迟,信函,財務預測井辆,提案或技術演示关筒。
category = core_properties.category
# string –資源內(nèi)容的帳戶。
comments = core_properties.comments
# string –文檔的完成狀態(tài)杯缺,例如“草稿”
content_status = core_properties.content_status
# datetime –最初創(chuàng)建文檔的時間
created = core_properties.created
# string –在給定上下文(例如ISBN)中對資源的明確引用。
identifier = core_properties.identifier
# string –描述性詞或短短語可能會用作本文檔的搜索詞
keywords = core_properties.keywords
# string -文檔所用的語言
language = core_properties.language
# string –上次修改文檔的人的姓名或其他標識符(例如電子郵件地址)
last_modified_by = core_properties.last_modified_by
# datetime –文檔上次打印的時間
last_printed = core_properties.last_printed
# datetime –文檔上次修改的時間
modified = core_properties.modified
# int –此修訂版的編號睡榆,每次保存文檔時萍肆,PowerPoint?客戶端將其遞增一次袍榆。
# 但是請注意,版本號不會由python-pptx自動增加塘揣。
revision = core_properties.revision
# string –資源內(nèi)容的主題包雀。
subject = core_properties.subject
# string –給資源的名稱。
title = core_properties.title
# string –自由格式的字符串
version = core_properties.version

prs.save('pptx/zf-01.pptx')
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末亲铡,一起剝皮案震驚了整個濱河市才写,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌奖蔓,老刑警劉巖赞草,帶你破解...
    沈念sama閱讀 216,997評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異吆鹤,居然都是意外死亡厨疙,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評論 3 392
  • 文/潘曉璐 我一進店門疑务,熙熙樓的掌柜王于貴愁眉苦臉地迎上來沾凄,“玉大人,你說我怎么就攤上這事知允∪鲶埃” “怎么了?”我有些...
    開封第一講書人閱讀 163,359評論 0 353
  • 文/不壞的土叔 我叫張陵温鸽,是天一觀的道長牙肝。 經(jīng)常有香客問我,道長嗤朴,這世上最難降的妖魔是什么配椭? 我笑而不...
    開封第一講書人閱讀 58,309評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮雹姊,結(jié)果婚禮上股缸,老公的妹妹穿的比我還像新娘。我一直安慰自己吱雏,他們只是感情好敦姻,可當我...
    茶點故事閱讀 67,346評論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著歧杏,像睡著了一般镰惦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上犬绒,一...
    開封第一講書人閱讀 51,258評論 1 300
  • 那天旺入,我揣著相機與錄音,去河邊找鬼。 笑死茵瘾,一個胖子當著我的面吹牛礼华,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播拗秘,決...
    沈念sama閱讀 40,122評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼圣絮,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了雕旨?” 一聲冷哼從身側(cè)響起扮匠,我...
    開封第一講書人閱讀 38,970評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎凡涩,沒想到半個月后棒搜,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,403評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡突照,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,596評論 3 334
  • 正文 我和宋清朗相戀三年帮非,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片讹蘑。...
    茶點故事閱讀 39,769評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡末盔,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出座慰,到底是詐尸還是另有隱情陨舱,我是刑警寧澤,帶...
    沈念sama閱讀 35,464評論 5 344
  • 正文 年R本政府宣布版仔,位于F島的核電站游盲,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏蛮粮。R本人自食惡果不足惜益缎,卻給世界環(huán)境...
    茶點故事閱讀 41,075評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望然想。 院中可真熱鬧莺奔,春花似錦、人聲如沸变泄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽妨蛹。三九已至屏富,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蛙卤,已是汗流浹背狠半。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人典予。 一個月前我還...
    沈念sama閱讀 47,831評論 2 370
  • 正文 我出身青樓甜滨,卻偏偏與公主長得像乐严,于是被迫代替她去往敵國和親瘤袖。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,678評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Slides對象 使用Presentation的slides屬性可以訪問Slides對象昂验。 它不打算直接構(gòu)造捂敌。cl...
    Yohann丶blog閱讀 4,429評論 0 3
  • ■在PPT演示文稿內(nèi)復制幻燈片 要復制演示文稿中的幻燈片占婉,請先在普通視圖的“大綱”或“幻燈片”選項中,選擇要復制的...
    jxowltlnwc閱讀 2,087評論 0 0
  • 前言:此教程獻給正在使用甫恩,或者準備使用和學習PPT的朋友逆济,希望對您有所幫助。 ■在PPT演示文稿內(nèi)復制幻燈片 要復...
    米糧me閱讀 2,082評論 0 2
  • 沒有云云時磺箕,我就很喜歡壓馬路奖慌。上海有那么多名人故居,有那么多獨特的小馬路松靡,真是逛也逛不完简僧。可惜老公是個不解風情的人...
    丑小鴨tyy閱讀 230評論 0 0
  • 今天第一次見(Justine)紀思婷雕欺,她給我的第一印象就是漂亮岛马,高高的個子,著裝很是休閑屠列,深褐色的頭發(fā)婉在頭的后上...
    丙由甲桂花兒閱讀 133評論 0 0