RPA/Python

[python-pptx] 특정 슬라이드를 하나의 파일로 만들기

꼰대 2021. 5. 9. 14:58

참고 및 인용 :

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

 

 

 

from pptx import Presentation

 

prs = Presentation('test.pptx')

 

# 대상 슬라이드 번호 (2번째 슬라이드)

slidetokeep = 1

 

# 슬라이드 삭제 함수

def delete_slide(prsslide):

    id_dict = { slide.id: [i, slide.rId] for i,slide in enumerate(prs.slides._sldIdLst) }

    slide_id = slide.slide_id

    prs.part.drop_rel(id_dict[slide_id][1])

    del prs.slides._sldIdLst[id_dict[slide_id][0]]



# 대상 슬라이드 이전 혹은 이후 슬라이드는 삭제

# 대상 슬라이드는 skip

for idx, slide in enumerate(prs.slides):

    if idx < slidetokeep:

        delete_slide(prs, slide)

    elif idx > slidetokeep:

        delete_slide(prs, slide)



prs.save(str(slidetokeep + 1) + ".pptx")

반응형