RPA/Python

[python-pptx] 슬라이드 복사

꼰대 2021. 5. 9. 14:18

아래 소스는 하나의 슬라이드가 있는 ppt 파일을 불러와 하나의 슬라이드만 복사하는 내용이다.

소스가 되는 슬라이드는 source_slide = prs.slides[0]에서 조정하면 된다.

 

참고 및 인용 :

https://stackoverflow.com/questions/50866634/python-pptx-copy-slide

 

 

 

 

from pptx import Presentation

import copy

 

prs = Presentation('test.pptx')



# 첫번째 슬라이드 가져오기

source_slide = prs.slides[0]

 

# 새로 추가할 슬라이드 레이아웃 정의 (6 : 빈 페이지)

slide_layout = prs.slide_layouts[6]

 

# 새로운 슬라이드 추가

copy_slide = prs.slides.add_slide(slide_layout)

 

# 기존 슬라이드(소스)에서 shape를 가져와 새로운 슬라이드에 복사

for shape in source_slide.shapes:

    el = shape.element

    newel = copy.deepcopy(el)

    copy_slide.shapes._spTree.insert_element_before(newel, 'p:extLst')

 

prs.save('test.pptx')

반응형