Skydda PowerPoint-filer i Python

Digitala dokument är alltid benägna att manipuleras av obehöriga. Därför används olika skyddsmekanismer för att säkerställa dokumentens säkerhet. I den här artikeln kommer vi särskilt att inrikta oss på skyddet av MS PowerPoint-presentationer. Så du kommer att lära dig hur du låser och låser upp PowerPoint-presentationer programmatiskt i Python.

Python-bibliotek för att låsa PowerPoint-presentationer

För att låsa och låsa upp PowerPoint-presentationer kommer vi att använda Aspose.Slides for Python. Biblioteket tillhandahåller en rad funktioner för att skapa och manipulera PowerPoint-presentationer. Du kan installera biblioteket i dina applikationer från PyPI med följande kommando.

> pip install aspose.slides 

Lås en PowerPoint-presentation i Python

En PowerPoint-presentation kan innehålla en mängd olika element som text, bilder, former, ljud etc. Aspose.Slides för Python representerar varje element som en Shape eller ett abjekt som härrör från Shape. Så för att skydda innehållet från att redigeras måste vi låsa alla former i presentationen. Dessa former kan vara av följande typer:

  • Auto Shape
  • Gruppform
  • Anslutning
  • Bild ram

Låt oss se hur man låser en PowerPoint PPTX-fil i Python.

  • Ladda först presentationsfilen med Presentation class.
  • Få sedan referens till bilder i presentationen med egenskapen Presentation.slides.
  • För varje bild kommer du åt dess former med ISlide.shapes-samlingen.
  • Utför följande steg för varje form i samlingen:
    • Kontrollera formen.
    • Använd lämpligt lås beroende på typen av form.
  • Slutligen, spara den uppdaterade presentationen med metoden Presentation.save(string, SaveFormat).

Följande kodexempel visar hur man skyddar en presentation genom att låsa dess former i Python.

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

    # gå igenom alla bilder i presentationen
   for slide in pres.slides:
       for shape in slide.shapes:
            # om formen är autoform
            if type(shape) is slides.AutoShape:
                auto_shape_lock = shape.shape_lock

                # applicera lås
                auto_shape_lock.position_locked = True
                auto_shape_lock.select_locked = True
                auto_shape_lock.size_locked = True

            # om form är gruppform
            elif type(shape) is slides.GroupShape:
                group_shape_lock = shape.shape_lock

                # applicera lås
                group_shape_lock.grouping_locked = True
                group_shape_lock.position_locked = True
                group_shape_lock.select_locked = True
                group_shape_lock.size_locked = True

            # om formen är en koppling
            elif type(shape) is slides.Connector:
                connector_lock = shape.shape_lock

                # applicera lås
                connector_lock.position_move = True
                connector_lock.select_locked = True
                connector_lock.size_locked = True

            # om formen är bildram
            elif type(shape) is slides.PictureFrame:
                picture_lock = shape.shape_lock

                # applicera lås
                picture_lock.position_locked = True
                picture_lock.select_locked = True
                picture_lock.size_locked = True

    # spara presentationsfilen
    pres.save("Locked.pptx", slides.export.SaveFormat.PPTX)

Lås upp PowerPoint-presentationer i Python

För att låsa upp en PowerPoint-presentation måste du ta bort låsen från varje form. Observera att om du har låst presentationen med Aspose.Slides för Python måste du använda samma bibliotek för att låsa upp. För att ta bort låsen upprepar du stegen som nämns i föregående avsnitt och ställer in låsvärdena till false.

Följande kodexempel visar hur man låser upp en PPTX-presentation i Python.

# ladda presentationen
with slides.Presentation("Locked.pptx") as pres:

    # gå igenom alla bilder i presentationen
   for slide in pres.slides:
       for shape in slide.shapes:
            # om formen är autoform
            if type(shape) is slides.AutoShape:
                auto_shape_lock = shape.shape_lock

                # ta bort lås
                auto_shape_lock.position_locked = False
                auto_shape_lock.select_locked = False
                auto_shape_lock.size_locked = False

            # om form är gruppform
            elif type(shape) is slides.GroupShape:
                group_shape_lock = shape.shape_lock

                # ta bort lås
                group_shape_lock.grouping_locked = False
                group_shape_lock.position_locked = False
                group_shape_lock.select_locked = False
                group_shape_lock.size_locked = False

            # om borttagning är en kontakt
            elif type(shape) is slides.Connector:
                connector_lock = shape.shape_lock

                # ta bort lås
                connector_lock.position_move = False
                connector_lock.select_locked = False
                connector_lock.size_locked = False

            # om formen är bildram
            elif type(shape) is slides.PictureFrame:
                picture_lock = shape.shape_lock

                # ta bort lås
                picture_lock.position_locked = False
                picture_lock.select_locked = False
                picture_lock.size_locked = False

    # spara presentationsfilen
    pres.save("Unlocked.pptx", slides.export.SaveFormat.PPTX)

Python Library för att säkra PowerPoint PPT - Skaffa en gratis licens

Använd Aspose.Slides för Python och säkra dina PowerPoint-presentationer utan utvärderingsbegränsningar genom att skaffa en gratis tillfällig licens.

Slutsats

Skydd av digitala dokument har blivit viktigt för att undvika manipulering av innehållet. Därför skyddas dokumenten innan de delas över internet. Följaktligen behandlade den här artikeln hur du låser PowerPoint-presentationer programmatiskt i Python. Dessutom har du sett hur du kan avskydda presentationerna genom att låsa upp deras element.

Python PowerPoint PPT Protection API - Läs mer

Du kan utforska mer om Aspose.Slides för Python genom att besöka dokumentationen. Du kan också skicka dina frågor till vårt forum.

Se även