Les documents numériques sont toujours susceptibles d’être falsifiés par des entités non autorisées. Par conséquent, divers mécanismes de protection sont utilisés pour assurer la sécurité des documents. Dans cet article, nous ciblerons particulièrement la protection des présentations MS PowerPoint. Vous apprendrez donc à verrouiller et déverrouiller des présentations PowerPoint par programmation en Python.
- Bibliothèque Python pour verrouiller les présentations PowerPoint
- Verrouiller une présentation PowerPoint en Python
- Déverrouiller une présentation PowerPoint en Python
Bibliothèque Python pour verrouiller les présentations PowerPoint
Pour verrouiller et déverrouiller les présentations PowerPoint, nous utiliserons Aspose.Slides for Python via .NET. La bibliothèque fournit une gamme de fonctionnalités pour créer et manipuler des présentations PowerPoint. Vous pouvez installer la bibliothèque dans vos applications à partir de PyPI à l’aide de la commande suivante.
> pip install aspose.slides
Verrouiller une présentation PowerPoint en Python
Une présentation PowerPoint peut contenir une variété d’éléments tels que du texte, des images, des formes, de l’audio, etc. Aspose.Slides for Python représente chaque élément sous la forme d’une forme ou d’un objet dérivé de la forme. Ainsi, afin de protéger le contenu contre la modification, nous devons verrouiller toutes les formes de la présentation. Ces formes pourraient être des types suivants :
- Forme automatique
- Forme du groupe
- Connecteur
- Cadre de l’image
Voyons comment verrouiller un fichier PowerPoint PPTX en Python.
- Tout d’abord, chargez le fichier de présentation à l’aide de la classe Presentation.
- Ensuite, obtenez la référence des diapositives dans la présentation à l’aide de la propriété Presentation.slides.
- Pour chaque diapositive, accédez à ses formes à l’aide de la collection ISlide.shapes.
- Pour chaque forme de la collection, procédez comme suit :
- Vérifiez le type de forme.
- Utilisez un verrou approprié en fonction du type de forme.
- Enfin, enregistrez la présentation mise à jour à l’aide de la méthode Presentation.save(string, SaveFormat).
L’exemple de code suivant montre comment protéger une présentation en verrouillant ses formes dans 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)
Débloquer des présentations PowerPoint en Python
Pour déverrouiller une présentation PowerPoint, vous devez supprimer les verrous de chaque forme. Veuillez noter que si vous avez verrouillé la présentation à l’aide de Aspose.Slides for Python, vous devrez utiliser la même bibliothèque pour le déverrouillage. Pour supprimer les verrous, répétez les étapes mentionnées dans la section précédente et définissez les valeurs de verrou sur false.
L’exemple de code suivant montre comment déverrouiller une présentation PPTX en Python.
# 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)
Obtenez une licence gratuite
Utilisez Aspose.Slides for Python via .NET sans limitation d’évaluation en obtenant une licence temporaire gratuite.
Conclusion
La protection des documents numériques est devenue essentielle pour éviter l’altération du contenu. Par conséquent, les documents sont protégés avant d’être partagés sur Internet. En conséquence, cet article a expliqué comment verrouiller des présentations PowerPoint par programme en Python. De plus, vous avez vu comment déprotéger les présentations en déverrouillant leurs éléments. En dehors de cela, vous pouvez en savoir plus sur Aspose.Slides for Python en visitant la documentation. Vous pouvez également poster vos questions sur notre forum.