Ensambla diapositivas
Añadir una diapositiva a una presentación
Antes de hablar de añadir diapositivas a los archivos de presentación, analicemos algunos datos sobre las diapositivas. Cada archivo de presentación de PowerPoint contiene una diapositiva Maestra / Diseño y otras diapositivas normales. Esto significa que un archivo de presentación contiene al menos una o más diapositivas. Es importante saber que los archivos de presentación sin diapositivas no son compatibles con Aspose.Slides for .NET. Cada diapositiva tiene un Id único y todas las diapositivas normales se organizan en un orden especificado por un índice basado en cero.
Aspose.Slides for .NET permite a los desarrolladores añadir diapositivas vacías a su presentación. Para añadir una diapositiva vacía en la presentación, siga los pasos a continuación:
- Crear una instancia de la clase Presentation
- Instanciar la clase SlideCollection estableciendo una referencia a la propiedad Slides (colección de objetos Slide de contenido) expuesta por el objeto Presentation.
- Añadir una diapositiva vacía a la presentación al final de la colección de diapositivas de contenido llamando a los métodos AddEmptySlide expuestos por el objeto SlideCollection
- Realizar alguna operación con la diapositiva vacía recién añadida
- Finalmente, escribir el archivo de presentación usando el objeto Presentation
PresentationEx pres = new PresentationEx();
//Instantiate SlideCollection class
SlideExCollection slds = pres.Slides;
for (int i = 0; i < pres.LayoutSlides.Count; i++)
{
//Add an empty slide to the Slides collection
slds.AddEmptySlide(pres.LayoutSlides[i]);
}
//Save the PPTX file to the Disk
pres.Write("EmptySlide.pptx");
Acceder a las diapositivas de una presentación
Aspose.Slides for .NET proporciona la clase Presentation que puede usarse para encontrar y acceder a cualquier diapositiva deseada presente en la presentación.
Usando la colección de diapositivas
La clase Presentation representa un archivo de presentación y expone todas sus diapositivas como una colección SlideCollection (es decir, una colección de objetos Slide). Todas estas diapositivas pueden accederse desde esta colección Slides usando un índice de diapositiva.
//Instantiate a Presentation object that represents a presentation file
PresentationEx pres = new PresentationEx("Slides Test Presentation.pptx");
//Accessing a slide using its slide index
SlideEx slide = pres.Slides[0];
Eliminar diapositivas
Sabemos que la clase Presentation en Aspose.Slides for .NET representa un archivo de presentación. La clase Presentation encapsula una SlideCollection que actúa como repositorio de todas las diapositivas que forman parte de la presentación. Los desarrolladores pueden eliminar una diapositiva de esta colección Slides de dos maneras:
- Usando referencia de diapositiva
- Usando índice de diapositiva
Usando referencia de diapositiva
Para eliminar una diapositiva usando su referencia, siga los pasos a continuación:
- Crear una instancia de la clase Presentation
- Obtener la referencia de una diapositiva usando su Id o Índice
- Eliminar la diapositiva referenciada de la presentación
- Escribir el archivo de presentación modificado
//Instantiate a Presentation object that represents a presentation file
PresentationEx pres = new PresentationEx("Slides Test Presentation.pptx");
//Accessing a slide using its index in the slides collection
SlideEx slide = pres.Slides[0];
//Removing a slide using its reference
pres.Slides.Remove(slide);
//Writing the presentation file
pres.Write("modified.pptx");
Cambiar la posición de una diapositiva
Es muy sencillo cambiar la posición de una diapositiva en la presentación. Simplemente siga los pasos a continuación:
- Crear una instancia de la clase Presentation
- Obtener la referencia de una diapositiva usando su Índice
- Cambiar el SlideNumber de la diapositiva referenciada
- Escribir el archivo de presentación modificado
En el ejemplo siguiente, hemos cambiado la posición de una diapositiva (situada en la posición de índice cero 1) de la presentación a la posición de índice 1 (Posición 2).
private static string MyDir = @"..\..\..\Sample Files\";
static void Main(string[] args)
{
AddingSlidetoPresentation();
AccessingSlidesOfPresentation();
RemovingSlides();
ChangingPositionOfSlide();
}
public static void AddingSlidetoPresentation()
{
Presentation pres = new Presentation();
//Instantiate SlideCollection class
ISlideCollection slds = pres.Slides;
for (int i = 0; i < pres.LayoutSlides.Count; i++)
{
//Add an empty slide to the Slides collection
slds.AddEmptySlide(pres.LayoutSlides[i]);
}
//Save the PPTX file to the Disk
pres.Save(MyDir + "Assemble Slides.pptx", SaveFormat.Pptx);
}
public static void AccessingSlidesOfPresentation()
{
//Instantiate a Presentation object that represents a presentation file
Presentation pres = new Presentation(MyDir + "Assemble Slides.pptx");
//Accessing a slide using its slide index
ISlide slide = pres.Slides[0];
}
public static void RemovingSlides()
{
//Instantiate a Presentation object that represents a presentation file
Presentation pres = new Presentation(MyDir + "Assemble Slides.pptx");
//Accessing a slide using its index in the slides collection
ISlide slide = pres.Slides[0];
//Removing a slide using its reference
pres.Slides.Remove(slide);
//Writing the presentation file
pres.Save(MyDir + "Assemble Slides.pptx", SaveFormat.Pptx);
}
public static void ChangingPositionOfSlide()
{
//Instantiate Presentation class to load the source presentation file
Presentation pres = new Presentation(MyDir + "Assemble Slides.pptx");
{
//Get the slide whose position is to be changed
ISlide sld = pres.Slides[0];
//Set the new position for the slide
sld.SlideNumber = 2;
//Write the presentation to disk
pres.Save(MyDir + "Assemble Slides.pptx", SaveFormat.Pptx);
}
}