Der Schutz digitaler Dokumente ist heutzutage ein allgemeines Anliegen. Sie möchten nicht, dass unbefugte Personen den Inhalt Ihrer Dokumente ändern. Daher ist es unumgänglich, wirksame Schutzmechanismen einzusetzen. Dementsprechend zeigen wir Ihnen in diesem Artikel, wie Sie PPT/PPTX-Präsentationen aus Ihren .NET-Anwendungen heraus schützen können. Wir werden dies erreichen, indem wir die Formen in einem PowerPoint PPT oder PPTX in C# sperren.
- C#-API zum Sperren von Formen in PowerPoint PPT
- Sperren von PowerPoint-PPT-Formen in C#
- Entsperren Sie Formen in PowerPoint PPT
C# .NET-API zum Sperren von Formen in PowerPoint PPT
Zum Sperren und Entsperren von PowerPoint-Präsentationen verwenden wir Aspose.Slides for .NET. Die API bietet eine Reihe von Funktionen zum Erstellen und Bearbeiten von PowerPoint-Präsentationen. Sie können die DLL der API entweder herunterladen oder mit NuGet installieren.
PM> Install-Package Aspose.Slides.NET
Formen in PowerPoint PPT in C# sperren
Eine PowerPoint-Präsentation kann eine Vielzahl von Elementen wie Text, Bilder, Audio usw. enthalten. Aspose.Slides für .NET nimmt jedes Element als eine Form oder ein von Shape abgeleitetes Objekt. Um den Inhalt der Präsentationen zu schützen, müssen wir also alle ihre Formen sperren. Aspose.Slides bietet geeignete Sperren für die folgenden Arten von Formen.
- Automatische Form
- Gruppenform
- Verbinder
- Bilderrahmen
Die folgenden Schritte zeigen, wie Formen in einer PowerPoint-PPT in C# gesperrt werden.
- Laden Sie zuerst die PPT/PPTX-Datei mit der Präsentationsklasse.
- Rufen Sie dann mithilfe der Presentation.Slides-Eigenschaft Folien in der Präsentation ab.
- Greifen Sie für jede Folie mithilfe der ISlide.Shapes-Auflistung auf ihre Formen zu.
- Führen Sie für jede Form in der Sammlung die folgenden Schritte aus:
- Überprüfen Sie die Art der Form.
- Verwenden Sie je nach Art der Form ein geeignetes Schloss.
- Speichern Sie schließlich die Präsentation mit der Presentation.Save(string, SaveFormat)-Methode.
Das folgende Codebeispiel zeigt, wie Formen in einem PowerPoint-PPTX mit C# gesperrt werden.
// Präsentation laden
using (Presentation presentation = new Presentation("presentation.pptx"))
{
// IShape-Objekt zum Halten temporärer Formen
IShape shape;
// Gehen Sie alle Folien in der Präsentation durch
for (int slideCount = 0; slideCount < presentation.Slides.Count; slideCount++)
{
var slide = presentation.Slides[slideCount];
// Durchqueren Sie alle Formen in den Folien
for (int count = 0; count < slide.Shapes.Count; count++)
{
shape = slide.Shapes[count];
// Wenn die Form eine automatische Form ist
if (shape is IAutoShape)
{
// Geben Sie Cast to Auto Shape ein und erhalten Sie die automatische Formsperre
IAutoShape Ashp = shape as IAutoShape;
IAutoShapeLock AutoShapeLock = Ashp.ShapeLock;
// Formsperren anwenden
AutoShapeLock.PositionLocked = true;
AutoShapeLock.SelectLocked = true;
AutoShapeLock.SizeLocked = true;
}
// Wenn die Form eine Gruppenform ist
else if (shape is IGroupShape)
{
// Geben Sie Umwandlung in Gruppenform ein und erhalten Sie Gruppenformsperre
IGroupShape Group = shape as IGroupShape;
IGroupShapeLock groupShapeLock = Group.ShapeLock;
// Formsperren anwenden
groupShapeLock.GroupingLocked = true;
groupShapeLock.PositionLocked = true;
groupShapeLock.SelectLocked = true;
groupShapeLock.SizeLocked = true;
}
// Wenn die Form ein Verbinder ist
else if (shape is IConnector)
{
// Geben Sie Umwandlung in Verbinderform ein und erhalten Sie die Verbinderformsperre
IConnector Conn = shape as IConnector;
IConnectorLock ConnLock = Conn.ShapeLock;
// Formsperren anwenden
ConnLock.PositionMove = true;
ConnLock.SelectLocked = true;
ConnLock.SizeLocked = true;
}
// Wenn Form Bilderrahmen ist
else if (shape is IPictureFrame)
{
// Geben Sie Cast to Picture Frame Shape ein und erhalten Sie die Bilderrahmenform-Sperre
IPictureFrame Pic = shape as IPictureFrame;
IPictureFrameLock PicLock = Pic.ShapeLock;
// Formsperren anwenden
PicLock.PositionLocked = true;
PicLock.SelectLocked = true;
PicLock.SizeLocked = true;
}
}
}
// Präsentation speichern
presentation.Save("locked-ppt.pptx", SaveFormat.Pptx);
}
Entsperren Sie PowerPoint-Präsentationen in C#
Um die Formen zu entsperren und bearbeitbar zu machen, müssen Sie die Sperren deaktivieren. Bitte beachten Sie, dass Sie, wenn Sie die Formen mit Aspose.Slides für .NET gesperrt haben, dieselbe API zum Entsperren verwenden müssen. Das Entsperren erfolgt durch Deaktivieren der Formsperren und Festlegen ihrer Werte auf „false“.
Das folgende Codebeispiel zeigt, wie Formen in einer PPTX-Datei in C# entsperrt werden.
// Präsentation laden
using (Presentation presentation = new Presentation("locked-ppt.ppt"))
{
// IShape-Objekt zum Halten temporärer Formen
IShape shape;
// Gehen Sie alle Folien in der Präsentation durch
for (int slideCount = 0; slideCount < presentation.Slides.Count; slideCount++)
{
var slide = presentation.Slides[slideCount];
// Durchqueren Sie alle Formen in den Folien
for (int count = 0; count < slide.Shapes.Count; count++)
{
shape = slide.Shapes[count];
// Wenn die Form eine automatische Form ist
if (shape is IAutoShape)
{
// Geben Sie Cast to Auto Shape ein und erhalten Sie die automatische Formsperre
IAutoShape Ashp = shape as IAutoShape;
IAutoShapeLock AutoShapeLock = Ashp.ShapeLock;
// Form freischalten
AutoShapeLock.PositionLocked = false;
AutoShapeLock.SelectLocked = false;
AutoShapeLock.SizeLocked = false;
}
// Wenn die Form eine Gruppenform ist
else if (shape is IGroupShape)
{
// Geben Sie Umwandlung in Gruppenform ein und erhalten Sie Gruppenformsperre
IGroupShape Group = shape as IGroupShape;
IGroupShapeLock groupShapeLock = Group.ShapeLock;
// Form freischalten
groupShapeLock.GroupingLocked = false;
groupShapeLock.PositionLocked = false;
groupShapeLock.SelectLocked = false;
groupShapeLock.SizeLocked = false;
}
// Wenn die Form ein Verbinder ist
else if (shape is IConnector)
{
// Geben Sie Umwandlung in Verbinderform ein und erhalten Sie die Verbinderformsperre
IConnector Conn = shape as IConnector;
IConnectorLock ConnLock = Conn.ShapeLock;
// Form freischalten
ConnLock.PositionMove = false;
ConnLock.SelectLocked = false;
ConnLock.SizeLocked = false;
}
// Wenn Form Bilderrahmen ist
else if (shape is IPictureFrame)
{
// Geben Sie Cast to Picture Frame Shape ein und erhalten Sie die Bilderrahmenform-Sperre
IPictureFrame Pic = shape as IPictureFrame;
IPictureFrameLock PicLock = Pic.ShapeLock;
// Form freischalten
PicLock.PositionLocked = false;
PicLock.SelectLocked = false;
PicLock.SizeLocked = false;
}
}
}
// Präsentation speichern
presentation.Save("unlocked-ppt.ppt", SaveFormat.Ppt);
}
Holen Sie sich eine kostenlose Lizenz
Verwenden Sie Aspose.Slides für .NET ohne Evaluierungseinschränkungen, indem Sie eine kostenlose temporäre Lizenz erhalten.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie Formen in PowerPoint PPT/PPTX in C# sperren. Darüber hinaus haben Sie gesehen, wie Sie den Schutz der Präsentationen aufheben, indem Sie ihre Formen programmgesteuert entsperren. Abgesehen davon können Sie mehr über Aspose.Slides für .NET erfahren, indem Sie die Dokumentation besuchen. Sie können Ihre Fragen auch in unserem Forum posten.