Python에서 PowerPoint 파일 보호

디지털 문서는 항상 승인되지 않은 주체에 의해 변조되기 쉽습니다. 따라서 문서의 보안을 보장하기 위해 다양한 보호 메커니즘이 사용됩니다. 이 기사에서는 특히 MS PowerPoint 프레젠테이션의 보호를 대상으로 합니다. 따라서 Python에서 프로그래밍 방식으로 PowerPoint 프레젠테이션을 잠그고 잠금 해제하는 방법을 배우게 됩니다.

PowerPoint 프레젠테이션을 잠그는 Python 라이브러리

PowerPoint 프레젠테이션을 잠그거나 잠금 해제하려면 .NET을 통한 Python용 Aspose.Slides를 사용합니다. 라이브러리는 PowerPoint 프레젠테이션을 만들고 조작하기 위한 다양한 기능을 제공합니다. 다음 명령을 사용하여 PyPI에서 애플리케이션에 라이브러리를 설치할 수 있습니다.

> pip install aspose.slides 

Python에서 PowerPoint 프레젠테이션 잠그기

PowerPoint 프레젠테이션에는 텍스트, 이미지, 모양, 오디오 등과 같은 다양한 요소가 포함될 수 있습니다. Python용 Aspose.Slides는 각 요소를 모양 또는 모양에서 파생된 객체로 나타냅니다. 따라서 콘텐츠가 편집되지 않도록 보호하려면 프레젠테이션의 모든 도형을 잠가야 합니다. 이러한 모양은 다음 유형일 수 있습니다.

  • 자동 모양
  • 그룹 모양
  • 커넥터
  • 사진 프레임

Python에서 PowerPoint PPTX 파일을 잠그는 방법을 살펴보겠습니다.

  • 먼저 Presentation 클래스를 사용하여 프레젠테이션 파일을 로드합니다.
  • 그런 다음 Presentation.slides 속성을 사용하여 프레젠테이션의 슬라이드 참조를 가져옵니다.
  • 각 슬라이드에 대해 ISlide.shapes 컬렉션을 사용하여 해당 모양에 액세스합니다.
  • 컬렉션의 각 모양에 대해 다음 단계를 수행합니다.
    • 모양의 유형을 확인하십시오.
    • 모양의 종류에 따라 적절한 잠금장치를 사용하십시오.
  • 마지막으로 Presentation.save(string, SaveFormat) 메서드를 사용하여 업데이트된 프레젠테이션을 저장합니다.

다음 코드 샘플은 Python에서 모양을 잠가 프레젠테이션을 보호하는 방법을 보여줍니다.

# load presentation
with slides.Presentation("presentation.pptx") as pres:

    # loop through all the slides in the presentation
    for slide in pres.slides:
        for shape in slide.shapes:
            # if shape is autoshape
            if type(shape) is slides.AutoShape:
                auto_shape_lock = shape.shape_lock

                # apply locks
                auto_shape_lock.position_locked = True
                auto_shape_lock.select_locked = True
                auto_shape_lock.size_locked = True

            # if shape is group shape
            elif type(shape) is slides.GroupShape:
                group_shape_lock = shape.shape_lock

                # apply locks
                group_shape_lock.grouping_locked = True
                group_shape_lock.position_locked = True
                group_shape_lock.select_locked = True
                group_shape_lock.size_locked = True

            # if shape is a connector
            elif type(shape) is slides.Connector:
                connector_lock = shape.shape_lock

                # apply locks
                connector_lock.position_move = True
                connector_lock.select_locked = True
                connector_lock.size_locked = True

            # if shape is picture frame
            elif type(shape) is slides.PictureFrame:
                picture_lock = shape.shape_lock

                # apply locks
                picture_lock.position_locked = True
                picture_lock.select_locked = True
                picture_lock.size_locked = True

    # save the presentation file
    pres.save("Locked.pptx", slides.export.SaveFormat.PPTX)

Python에서 PowerPoint 프레젠테이션 잠금 해제

PowerPoint 프레젠테이션의 잠금을 해제하려면 각 도형에서 잠금을 제거해야 합니다. Python용 Aspose.Slides를 사용하여 프레젠테이션을 잠근 경우 잠금 해제를 위해 동일한 라이브러리를 사용해야 합니다. 잠금을 제거하려면 이전 섹션에서 언급한 단계를 반복하고 잠금 값을 false로 설정하십시오.

다음 코드 샘플은 Python에서 PPTX 프레젠테이션을 잠금 해제하는 방법을 보여줍니다.

# load presentation
with slides.Presentation("Locked.pptx") as pres:

    # loop through all the slides in the presentation
    for slide in pres.slides:
        for shape in slide.shapes:
            # if shape is autoshape
            if type(shape) is slides.AutoShape:
                auto_shape_lock = shape.shape_lock

                # remove locks
                auto_shape_lock.position_locked = False
                auto_shape_lock.select_locked = False
                auto_shape_lock.size_locked = False

            # if shape is group shape
            elif type(shape) is slides.GroupShape:
                group_shape_lock = shape.shape_lock

                # remove locks
                group_shape_lock.grouping_locked = False
                group_shape_lock.position_locked = False
                group_shape_lock.select_locked = False
                group_shape_lock.size_locked = False

            # if remove is a connector
            elif type(shape) is slides.Connector:
                connector_lock = shape.shape_lock

                # remove locks
                connector_lock.position_move = False
                connector_lock.select_locked = False
                connector_lock.size_locked = False

            # if shape is picture frame
            elif type(shape) is slides.PictureFrame:
                picture_lock = shape.shape_lock

                # remove locks
                picture_lock.position_locked = False
                picture_lock.select_locked = False
                picture_lock.size_locked = False

    # save the presentation file
    pres.save("Unlocked.pptx", slides.export.SaveFormat.PPTX)

무료 라이선스 받기

무료 임시 라이선스를 얻어 평가 제한 없이 .NET을 통해 Python용 Aspose.Slides를 사용하십시오.

결론

콘텐츠의 변조를 방지하기 위해 디지털 문서의 보호가 필수적이 되었습니다. 따라서 문서는 인터넷을 통해 공유되기 전에 보호됩니다. 따라서 이 기사에서는 Python에서 프로그래밍 방식으로 PowerPoint 프레젠테이션을 잠그는 방법에 대해 설명했습니다. 또한 해당 요소의 잠금을 해제하여 프레젠테이션의 보호를 해제하는 방법을 살펴보았습니다. 그 외에도 문서를 방문하여 Python용 Aspose.Slides에 대해 자세히 알아볼 수 있습니다. 또한 포럼에 질문을 게시할 수 있습니다.

또한보십시오