La protezione dei documenti digitali è una preoccupazione comune in questi giorni. Non vuoi che nessuna persona non autorizzata modifichi il contenuto dei tuoi documenti. Diventa quindi inevitabile utilizzare meccanismi di protezione efficaci. Di conseguenza, in questo articolo, ti mostreremo come proteggere le presentazioni PPT/PPTX dalle tue applicazioni .NET. Lo realizzeremo bloccando le forme in un PowerPoint PPT o PPTX in C#.
- API C# per bloccare le forme in PowerPoint PPT
- Blocca le forme PPT di PowerPoint in C#
- Sblocca le forme in PowerPoint PPT
API C# .NET per bloccare le forme in PowerPoint PPT
Per bloccare e sbloccare le presentazioni PowerPoint, utilizzeremo Aspose.Slides for .NET. L’API fornisce una gamma di funzionalità per creare e manipolare presentazioni PowerPoint. Puoi scaricare la DLL dell’API o installarla utilizzando NuGet.
PM> Install-Package Aspose.Slides.NET
Blocca forme in PowerPoint PPT in C#
Una presentazione PowerPoint può contenere una varietà di elementi come testo, immagini, audio, ecc. Aspose.Slides per .NET prende ogni elemento come una forma o un oggetto derivato da Shape. Quindi, per proteggere il contenuto delle presentazioni, dobbiamo bloccare tutte le loro forme. Aspose.Slides fornisce i blocchi appropriati per i seguenti tipi di forme.
- Forma automatica
- Forma di gruppo
- Connettore
- Cornice
I passaggi seguenti mostrano come bloccare le forme in un PPT di PowerPoint in C#.
- Innanzitutto, carica il file PPT/PPTX utilizzando la classe Presentation.
- Quindi, ottieni le diapositive nella presentazione usando la proprietà Presentation.Slides.
- Per ogni diapositiva, accedi alle sue forme usando la raccolta ISlide.Shapes.
- Per ogni forma nella raccolta, eseguire i seguenti passaggi:
- Controlla il tipo della forma.
- Utilizzare una serratura appropriata in base al tipo di forma.
- Infine, salva la presentazione usando il metodo Presentation.Save(string, SaveFormat).
Nell’esempio di codice seguente viene illustrato come bloccare le forme in un PowerPoint PPTX usando C#.
// Carica presentazione
using (Presentation presentation = new Presentation("presentation.pptx"))
{
// Oggetto IShape per contenere forme temporanee
IShape shape;
// Scorri tutte le diapositive della presentazione
for (int slideCount = 0; slideCount < presentation.Slides.Count; slideCount++)
{
var slide = presentation.Slides[slideCount];
// Attraversa tutte le forme nelle diapositive
for (int count = 0; count < slide.Shapes.Count; count++)
{
shape = slide.Shapes[count];
// Se la forma è forma automatica
if (shape is IAutoShape)
{
// Digita cast to auto shape e ottieni il blocco automatico della forma
IAutoShape Ashp = shape as IAutoShape;
IAutoShapeLock AutoShapeLock = Ashp.ShapeLock;
// Applicare blocchi di forma
AutoShapeLock.PositionLocked = true;
AutoShapeLock.SelectLocked = true;
AutoShapeLock.SizeLocked = true;
}
// Se la forma è forma di gruppo
else if (shape is IGroupShape)
{
// Digita cast to group shape e ottieni il blocco della forma del gruppo
IGroupShape Group = shape as IGroupShape;
IGroupShapeLock groupShapeLock = Group.ShapeLock;
// Applicare blocchi di forma
groupShapeLock.GroupingLocked = true;
groupShapeLock.PositionLocked = true;
groupShapeLock.SelectLocked = true;
groupShapeLock.SizeLocked = true;
}
// Se la forma è un connettore
else if (shape is IConnector)
{
// Digita cast to connector shape e ottieni il blocco della forma del connettore
IConnector Conn = shape as IConnector;
IConnectorLock ConnLock = Conn.ShapeLock;
// Applicare blocchi di forma
ConnLock.PositionMove = true;
ConnLock.SelectLocked = true;
ConnLock.SizeLocked = true;
}
// Se la forma è cornice
else if (shape is IPictureFrame)
{
// Digita cast to pitcture frame shape e ottieni il blocco della forma della cornice dell'immagine
IPictureFrame Pic = shape as IPictureFrame;
IPictureFrameLock PicLock = Pic.ShapeLock;
// Applicare blocchi di forma
PicLock.PositionLocked = true;
PicLock.SelectLocked = true;
PicLock.SizeLocked = true;
}
}
}
// Salva presentazione
presentation.Save("locked-ppt.pptx", SaveFormat.Pptx);
}
Sblocca presentazioni PowerPoint in C#
Per sbloccare le forme e renderle modificabili, dovrai disattivare i lucchetti. Tieni presente che se hai bloccato le forme utilizzando Aspose.Slides per .NET, dovrai utilizzare la stessa API per lo sblocco. Lo sblocco viene eseguito disabilitando i blocchi di forma e impostandone i valori su false.
L’esempio di codice seguente mostra come sbloccare le forme in un file PPTX in C#.
// Carica presentazione
using (Presentation presentation = new Presentation("locked-ppt.ppt"))
{
// Oggetto IShape per contenere forme temporanee
IShape shape;
// Scorri tutte le diapositive della presentazione
for (int slideCount = 0; slideCount < presentation.Slides.Count; slideCount++)
{
var slide = presentation.Slides[slideCount];
// Attraversa tutte le forme nelle diapositive
for (int count = 0; count < slide.Shapes.Count; count++)
{
shape = slide.Shapes[count];
// Se la forma è forma automatica
if (shape is IAutoShape)
{
// Digita cast to auto shape e ottieni il blocco automatico della forma
IAutoShape Ashp = shape as IAutoShape;
IAutoShapeLock AutoShapeLock = Ashp.ShapeLock;
// Sblocca la forma
AutoShapeLock.PositionLocked = false;
AutoShapeLock.SelectLocked = false;
AutoShapeLock.SizeLocked = false;
}
// Se la forma è forma di gruppo
else if (shape is IGroupShape)
{
// Digita cast to group shape e ottieni il blocco della forma del gruppo
IGroupShape Group = shape as IGroupShape;
IGroupShapeLock groupShapeLock = Group.ShapeLock;
// Sblocca la forma
groupShapeLock.GroupingLocked = false;
groupShapeLock.PositionLocked = false;
groupShapeLock.SelectLocked = false;
groupShapeLock.SizeLocked = false;
}
// Se la forma è un connettore
else if (shape is IConnector)
{
// Digita cast to connector shape e ottieni il blocco della forma del connettore
IConnector Conn = shape as IConnector;
IConnectorLock ConnLock = Conn.ShapeLock;
// Sblocca la forma
ConnLock.PositionMove = false;
ConnLock.SelectLocked = false;
ConnLock.SizeLocked = false;
}
// Se la forma è cornice
else if (shape is IPictureFrame)
{
// Digita cast to pitcture frame shape e ottieni il blocco della forma della cornice dell'immagine
IPictureFrame Pic = shape as IPictureFrame;
IPictureFrameLock PicLock = Pic.ShapeLock;
// Sblocca la forma
PicLock.PositionLocked = false;
PicLock.SelectLocked = false;
PicLock.SizeLocked = false;
}
}
}
// Salva presentazione
presentation.Save("unlocked-ppt.ppt", SaveFormat.Ppt);
}
Ottieni una licenza gratuita
Usa Aspose.Slides per .NET senza limitazioni di valutazione ottenendo una licenza temporanea gratuita.
Conclusione
In questo articolo, hai imparato come bloccare le forme in PowerPoint PPT/PPTX in C#. Inoltre, hai visto come rimuovere la protezione delle presentazioni sbloccando le loro forme a livello di codice. Oltre a questo, puoi esplorare di più su Aspose.Slides per .NET visitando la documentazione. Inoltre, puoi inviare le tue domande al nostro forum.