Prezentációzárolás
Prezentációzárolás
Az Aspose.Slides gyakori felhasználási módja, hogy Microsoft PowerPoint 2007 (PPTX) prezentációkat hozzon létre, frissítsen és mentse egy automatizált munkafolyamat részeként. Az alkalmazás felhasználói, amely így használja az Aspose.Slides-ot, hozzáférnek a kimeneti prezentációkhoz. Azok szerkesztés elleni védelme gyakori aggodalom. Fontos, hogy az automatikusan generált prezentációk megőrizzék eredeti formázásukat és tartalmukat.
Ez elmagyarázza, hogyan épülnek fel a prezentációk és diák, valamint hogyan tud az Aspose.Slides for .NET védelmet alkalmazni egy prezentáción, majd eltávolítani azt. Ez a funkció egyedülálló az Aspose.Slides számára, és a megírás időpontjában nem elérhető a Microsoft PowerPointban. A fejlesztőknek lehetőséget ad arra, hogy szabályozzák, hogyan használják fel az alkalmazásaik által létrehozott prezentációkat.
Dia összeállítása
Egy PPTX dia számos komponensből áll, például automatikus alakzatok, táblázatok, OLE-objektumok, csoportosított alakzatok, képkockák, videókockák, csatlakozók és a prezentáció felépítéséhez rendelkezésre álló különféle egyéb elemek.
Az Aspose.Slides for .NET-ben a dia minden eleme Shape objektummá alakul. Más szóval, a dia minden eleme vagy Shape objektum, vagy a Shape objektumból származtatott objektum.
A PPTX felépítése összetett, így a PPT-vel ellentétben, ahol egy általános zárolás használható minden alakzattípusra, a különböző alakzattípusokhoz különféle zárak léteznek. A BaseShapeLock osztály a generikus PPTX zárolási osztály. Az alábbi zár típusok támogatottak az Aspose.Slides for .NET-ben a PPTX-hez.
- AutoShapeLock zárolja az automatikus alakzatokat.
- ConnectorLock zárolja a csatlakozó alakzatokat.
- GraphicalObjectLock zárolja a grafikus objektumokat.
- GroupshapeLock zárolja a csoportos alakzatokat.
- PictureFrameLock zárolja a képkockákat.
Bármely, a Presentation objektum összes Shape objektumán végrehajtott művelet a teljes prezentációra vonatkozik.
Védelem alkalmazása és eltávolítása
A védelem alkalmazása biztosítja, hogy egy prezentációt ne lehessen szerkeszteni. Hasznos technika a prezentáció tartalmának védelmére.
Védelem alkalmazása PPTX alakzatokra
Az Aspose.Slides for .NET a Shape osztályt biztosítja a dia alakzatának kezeléséhez.
Ahogy korábban említettük, minden alakzat osztálynak van egy hozzá tartozó shape lock osztálya a védelemhez. Ez a cikk a NoSelect, NoMove és NoResize zárakra összpontosít. Ezek a zárak biztosítják, hogy az alakzatok ne legyenek kiválaszthatók (egérkattintással vagy más kiválasztási módszerekkel), valamint ne mozgathatók vagy átméretezhetők.
Az alábbi kópminták a prezentáció összes alakzattípusára alkalmazzák a védelmet.
//Példányosítja a Presentation osztályt, amely egy PPTX fájlt képvisel
PresentationEx pTemplate = new PresentationEx("Applying Protection.pptx");//Példányosítja a Presentation osztályt, amely egy PPTX fájlt képvisel
//ISlide objektum a prezentáció diáinak eléréséhez
SlideEx slide = pTemplate.Slides[0];
//IShape objektum az ideiglenes alakzatok tárolásához
ShapeEx shape;
//A prezentáció minden diájának bejárása
for (int slideCount = 0; slideCount < pTemplate.Slides.Count; slideCount++)
{
slide = pTemplate.Slides[slideCount];
//A diák összes alakzatának bejárása
for (int count = 0; count < slide.Shapes.Count; count++)
{
shape = slide.Shapes[count];
//ha az alakzat automatikus alakzat
if (shape is AutoShapeEx)
{
//Típuskonverzió Auto shape-re és az auto shape zárolás lekérése
AutoShapeEx Ashp = shape as AutoShapeEx;
AutoShapeLockEx AutoShapeLock = Ashp.ShapeLock;
//Alakzatok zárolásának alkalmazása
AutoShapeLock.PositionLocked = true;
AutoShapeLock.SelectLocked = true;
AutoShapeLock.SizeLocked = true;
}
//ha az alakzat csoport alakzat
else if (shape is GroupShapeEx)
{
//Típuskonverzió csoport alakzatra és a csoport alakzat zárolásának lekérése
GroupShapeEx Group = shape as GroupShapeEx;
GroupShapeLockEx groupShapeLock = Group.ShapeLock;
//Alakzatok zárolásának alkalmazása
groupShapeLock.GroupingLocked = true;
groupShapeLock.PositionLocked = true;
groupShapeLock.SelectLocked = true;
groupShapeLock.SizeLocked = true;
}
//ha az alakzat egy csatlakozó
else if (shape is ConnectorEx)
{
//Típuskonverzió csatlakozó alakzatra és a csatlakozó alakzat zárolásának lekérése
ConnectorEx Conn = shape as ConnectorEx;
ConnectorLockEx ConnLock = Conn.ShapeLock;
//Alakzatok zárolásának alkalmazása
ConnLock.PositionMove = true;
ConnLock.SelectLocked = true;
ConnLock.SizeLocked = true;
}
//ha az alakzat képkocka
else if (shape is PictureFrameEx)
{
//Típuskonverzió képkocka alakzatra és a képkocka alakzat zárolásának lekérése
PictureFrameEx Pic = shape as PictureFrameEx;
PictureFrameLockEx PicLock = Pic.ShapeLock;
//Alakzatok zárolásának alkalmazása
PicLock.PositionLocked = true;
PicLock.SelectLocked = true;
PicLock.SizeLocked = true;
}
}
}
//A prezentáció fájl mentése
pTemplate.Save("ProtectedSample.pptx", Aspose.Slides.Export.SaveFormat.Pptx);
Védelem eltávolítása
Az Aspose.Slides for .NET által alkalmazott védelmet csak az Aspose.Slides for .NET segítségével lehet eltávolítani. Egy alakzat feloldásához állítsa a alkalmazott zár értékét false-ra. Az alábbi kópminta bemutatja, hogyan oldhatók fel a alakzatok egy zárolt prezentációban.
//Megnyitja a kívánt prezentációt
PresentationEx pTemplate = new PresentationEx("ProtectedSample.pptx");
//ISlide objektum a prezentáció diáinak eléréséhez
SlideEx slide = pTemplate.Slides[0];
//IShape objektum az ideiglenes alakzatok tárolásához
ShapeEx shape;
//A prezentáció összes diájának bejárása
for (int slideCount = 0; slideCount < pTemplate.Slides.Count; slideCount++)
{
slide = pTemplate.Slides[slideCount];
//A diák összes alakzatának bejárása
for (int count = 0; count < slide.Shapes.Count; count++)
{
shape = slide.Shapes[count];
//ha az alakzat automatikus alakzat
if (shape is AutoShapeEx)
{
//Típuskonverzió Auto shape-re és az automatikus alakzat zárolásának lekérése
AutoShapeEx Ashp = shape as AutoShapeEx;
AutoShapeLockEx AutoShapeLock = Ashp.ShapeLock;
//Alakzatok zárolásának alkalmazása
AutoShapeLock.PositionLocked = false;
AutoShapeLock.SelectLocked = false;
AutoShapeLock.SizeLocked = false;
}
//ha az alakzat csoport alakzat
else if (shape is GroupShapeEx)
{
//Típuskonverzió csoport alakzatra és a csoport alakzat zárolásának lekérése
GroupShapeEx Group = shape as GroupShapeEx;
GroupShapeLockEx groupShapeLock = Group.ShapeLock;
//Alakzatok zárolásának alkalmazása
groupShapeLock.GroupingLocked = false;
groupShapeLock.PositionLocked = false;
groupShapeLock.SelectLocked = false;
groupShapeLock.SizeLocked = false;
}
//ha az alakzat csatlakozó alakzat
else if (shape is ConnectorEx)
{
//Típuskonverzió csatlakozó alakzatra és a csatlakozó alakzat zárolásának lekérése
ConnectorEx Conn = shape as ConnectorEx;
ConnectorLockEx ConnLock = Conn.ShapeLock;
//Alakzatok zárolásának alkalmazása
ConnLock.PositionMove = false;
ConnLock.SelectLocked = false;
ConnLock.SizeLocked = false;
}
//ha az alakzat képkocka
else if (shape is PictureFrameEx)
{
//Típuskonverzió képkocka alakzatra és a képkocka alakzat zárolásának lekérése
PictureFrameEx Pic = shape as PictureFrameEx;
PictureFrameLockEx PicLock = Pic.ShapeLock;
//Alakzatok zárolásának alkalmazása
PicLock.PositionLocked = false;
PicLock.SelectLocked = false;
PicLock.SizeLocked = false;
}
}
}
//A prezentáció fájl mentése
pTemplate.Save("RemoveProtectionSample.pptx", Aspose.Slides.Export.SaveFormat.Pptx);