HERRAMIENTAS EXCEL

Cómo Usar Crear PowerPoint desde una Plantilla en C#

Actualizado 26 de marzo, 2024
Compartir:

Introducción

Las presentaciones de PowerPoint siguen siendo un estándar para comunicar información de forma eficaz en los ámbitos comercial, educativo y otros. PowerPoint es una herramienta flexible que puede mejorar tus esfuerzos de comunicación, tanto si estás dando una clase, informando sobre un proyecto a tu equipo o haciendo una presentación a posibles inversores. Sin embargo, crear presentaciones desde cero puede llevar mucho tiempo, y la eficacia y uniformidad del diseño pueden no ser siempre las deseadas. Aquí es donde resultan útiles las plantillas de PowerPoint, que ofrecen diapositivas ya preparadas con temas y diseños que pueden modificarse para adaptarlas a sus necesidades.

En este post, veremos cómo usar C# para crear un PowerPoint a partir de una plantilla. Podemos agilizar el procedimiento y permitir a los clientes crear presentaciones pulidas con facilidad utilizando el programa Microsoft Biblioteca PowerPoint Interop.

Cómo usar Crear PowerPoint a partir de una plantilla en C#

  1. Cree un nuevo proyecto C#.
  2. Inicie el programa PowerPoint en una nueva instancia.
  3. Insertar diapositivas de una plantilla en una presentación recién creada.
  4. Crea un nuevo archivo y guarda la presentación.
  5. Cierre el programa PowerPoint y finalice la presentación.

Comprensión de PowerPoint a partir de una plantilla

Repasemos primero las ideas básicas para escribir presentaciones de PowerPoint mediante programación antes de entrar en el código. Con la biblioteca PowerPoint Interop de Microsoft, los desarrolladores pueden utilizar lenguajes .NET como C# para comunicarse con aplicaciones PowerPoint. Este paquete ofrece numerosas funciones, como la posibilidad de crear diapositivas, añadir texto, insertar imágenes y aplicar formato.

Crear un nuevo proyecto de Visual Studio

Para iniciar un nuevo Visual Studio siga las instrucciones que figuran a continuación.

Inicie la aplicación Visual Studio. Antes de utilizar Visual Studio, asegúrese de que lo ha instalado en su ordenador.

Seleccione Archivo, luego Nuevo y, por último, Proyecto.

Como Usar Crear PowerPoint desde una Plantilla en C#: Figura 1 - Crear un Nuevo Proyecto en Visual Studio. Elija el lenguaje C# y una aplicación de consola o Console App (.NET Core)  proyecto.

Elija su lenguaje de programación preferido (C#, por ejemplo) de la parte izquierda del cuadro "Crear un nuevo proyecto". A continuación, de la lista de plantillas de proyecto disponibles, elija "Aplicación de consola" o "Aplicación de consola". (.NET Core)". Para dar un nombre a su proyecto, rellene el campo "Nombre".

Cómo Usar Crear PowerPoint desde una Plantilla en C#: Figura 2 - Configurar el proyecto Console App: Añada un nombre de Proyecto y una Ubicación.

Decide dónde se almacenará el proyecto. Para empezar a trabajar en un nuevo proyecto de aplicación de Consola, haga clic en "Siguiente". A continuación, seleccione el .NET Framework adecuado y haga clic en "Crear".

Como Usar Crear PowerPoint desde una Plantilla en C#: Figura 3 - Seleccione el .NET Framework apropiado y haga clic en "Crear".

En un proyecto C# recién creado, añada una referencia a la biblioteca Microsoft PowerPoint Interop. Ahora es más fácil desarrollar presentaciones e interactuar con ellas gracias a esta biblioteca, que permite la comunicación entre su código C# y la aplicación PowerPoint.

Crear PowerPoint a partir de Plantilla utilizando C#

Cargar la plantilla de PowerPoint que constituye la base de nuestra nueva presentación es el primer paso. Las plantillas suelen contener diseños de diapositivas, temas y marcadores de contenido predefinidos. La función de la biblioteca Microsoft.Office.PowerPoint.Interop nos permite abrir el archivo de plantilla y recuperar su contenido desde nuestro código fuente C#.

using PowerPoint = Microsoft.Office.Interop.PowerPoint;
class Program
{
    static void Main(string [] args)
    {
        //  Inicializar la aplicación PowerPoint
        PowerPoint.Application powerpointApp = new PowerPoint.Application();
        //  Cargar un archivo PowerPoint
        PowerPoint.Presentation presentation = powerpointApp.Presentations.Open(
            @"C:\Path\To\Existing\output.pptx",
            MsoTriState.msoFalse,
            MsoTriState.msoFalse,
            MsoTriState.msoTrue);
        //  diapositiva ppt a partir de un archivo de plantilla
        presentation.Slides.InsertFromFile(
            @"C:\Path\To\External\demo.pptx",
            presentation.Slides.Count + 1,
            1,
            0);
        //  Guardar la presentación actualizada
        presentation.Save();
        //  Cierre la presentación y salga de la aplicación PowerPoint
        presentation.Close();
        powerpointApp.Quit();
    }
}
using PowerPoint = Microsoft.Office.Interop.PowerPoint;
class Program
{
    static void Main(string [] args)
    {
        //  Inicializar la aplicación PowerPoint
        PowerPoint.Application powerpointApp = new PowerPoint.Application();
        //  Cargar un archivo PowerPoint
        PowerPoint.Presentation presentation = powerpointApp.Presentations.Open(
            @"C:\Path\To\Existing\output.pptx",
            MsoTriState.msoFalse,
            MsoTriState.msoFalse,
            MsoTriState.msoTrue);
        //  diapositiva ppt a partir de un archivo de plantilla
        presentation.Slides.InsertFromFile(
            @"C:\Path\To\External\demo.pptx",
            presentation.Slides.Count + 1,
            1,
            0);
        //  Guardar la presentación actualizada
        presentation.Save();
        //  Cierre la presentación y salga de la aplicación PowerPoint
        presentation.Close();
        powerpointApp.Quit();
    }
}
Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		'  Inicializar la aplicación PowerPoint
		Dim powerpointApp As New PowerPoint.Application()
		'  Cargar un archivo PowerPoint
		Dim presentation As PowerPoint.Presentation = powerpointApp.Presentations.Open("C:\Path\To\Existing\output.pptx", MsoTriState.msoFalse, MsoTriState.msoFalse, MsoTriState.msoTrue)
		'  diapositiva ppt a partir de un archivo de plantilla
		presentation.Slides.InsertFromFile("C:\Path\To\External\demo.pptx", presentation.Slides.Count + 1, 1, 0)
		'  Guardar la presentación actualizada
		presentation.Save()
		'  Cierre la presentación y salga de la aplicación PowerPoint
		presentation.Close()
		powerpointApp.Quit()
	End Sub
End Class
VB   C#

Después de cargar la plantilla, construimos una nueva presentación utilizando su diseño. Utilizamos el archivo de presentación PowerPoint (output.pptx). Lo que nos ayuda a crear un objeto PowerPoint presentación que actuará como un lienzo para nuestro material. El diseño y el tema de la plantilla se trasladarán a esta presentación, dándole un estilo visual unificado.

Como Usar Crear PowerPoint desde una Plantilla en C#: Figura 4 - Segundo archivo PowerPoint (demo.pptx) que contiene las diapositivas que desea incluir en su presentación

La función presentation.Slides.InsertFromFile()El método toma cuatro parámetros, a saber FileName, Index, SlideStart, SlideEnd.

La ruta del archivo PowerPoint que contiene las diapositivas que desea incluir en su presentación se especifica como primer parámetro (demo.pptx). El siguiente parámetro es el número de diapositivas que el usuario debe copiar en el nuevo archivo desde la plantilla. Los otros dos parámetros son opcionales. Estos parámetros nos permiten pasar los índices de inicio y fin de diapositiva. Si necesitamos extraer diapositivas entre dos diapositivas podemos utilizar estos parámetros.

Puede utilizar una presentación.Guardar() método para guardar la presentación después de que las diapositivas hayan sido insertadas usando InsertFromFile(), cierre el programa PowerPoint utilizando el método Cerrar() y, a continuación, salga de la presentación con el método Quit() método. De este modo, puede mejorar el contenido y la flexibilidad de su presentación de PowerPoint añadiendo diapositivas dinámicamente desde archivos externos utilizando la técnica InsertFromFile.

Salida

Como Usar Crear PowerPoint desde una Plantilla en C#: Figura 5 - Salida: output.pptx

IronXL

Presentamos una biblioteca de C# repleta de funciones para trabajar con archivos Excel llamada IronXL. Iron Software IronXL proporciona una amplia gama de herramientas para crear, rellenar y formatear dinámicamente documentos Excel. Con su API de fácil uso y su extensa documentación, IronXL agiliza las interacciones de Excel en C# y proporciona a los desarrolladores una experiencia sin fisuras para las tareas relacionadas con Excel.

Características de IronXL

  • Amplio soporte de Excel: IronXL es capaz de abrir y manipular un gran número de archivos de Excel en varios formatos de Excel, como los formatos de archivo CSV, XLS y XLSX. Los desarrolladores pueden extraer eficazmente datos de un archivo Excel existente utilizando tanto archivos Excel antiguos como actuales gracias a las sólidas funciones de análisis sintáctico de IronXL.
  • Alta velocidad: IronXL prioriza la optimización del rendimiento. Las interacciones de Excel son fiables y rápidas gracias al uso de algoritmos y estrategias de gestión de memoria eficaces. IronXL ofrece una sobrecarga de memoria reducida y una velocidad de procesamiento optimizada, para que los desarrolladores puedan gestionar fácilmente archivos Excel de gran tamaño.
  • API sencilla y fácil de usar: La API fácil de usar de IronXL hace que sea adecuado para desarrolladores de todos los niveles de habilidad. IronXL reduce la curva de aprendizaje de los desarrolladores de C# y agiliza el proceso de creación y lectura de un archivo existente proporcionando formas sencillas de leer archivos de Excel, acceder a libros de Excel y obtener datos de las celdas.

    Para obtener más información sobre la documentación de IronXL, consulte aquí.

Instalar IronXL

Io instalar IronXL, utilice las instrucciones y el comando dado en los siguientes pasos:

En Visual Studio, vaya a Herramientas -> Gestor de paquetes NuGet -> interfaz del Gestor de paquetes.

Introduzca el siguiente código en la pestaña de la consola del gestor de paquetes:

Install-Package IronXL.Excel

El paquete IronXL es ahora utilizable después de ser descargado e instalado en el proyecto actual.

Crear Excel con IronXL

Examinemos ahora un ejemplo de código real que demuestra cómo escribir datos en un documento de Excel en C# utilizando IronXL. Vamos a ver cómo iniciar un nuevo libro de Excel, completar una hoja de cálculo y, a continuación, guardar la información en un archivo:

using IronXL;
class Program
{
    static void Main(string [] args)
    {
            //  Crear un nuevo objeto WorkBook
            WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
            //  Añadir una nueva WorkSheet al libro de trabajo
            WorkSheet workSheet = workBook.CreateWorkSheet("Sheet1");
            //  Definir datos de muestra
            string [,] data = {
            { "Name", "Age", "City" },
            { "Superman ", "35", "Metropolis" },
            { "Batman", "34", "Metropolis" },
            { "Flash", "30", "Central City" }
        };
            //  Rellenar la hoja de cálculo con datos
            for (int row = 0; row < data.GetLength(0); row++)
            {
                for (int col = 0; col < data.GetLength(1); col++)
                {
                    workSheet.SetCellValue(row, col, data [row, col]);
                }
            }
            //  Guardar el libro de trabajo en un archivo xlsx
            workBook.SaveAs("Demo.xlsx");
            //  Cerrar el libro
            workBook.Close();
    }
}
using IronXL;
class Program
{
    static void Main(string [] args)
    {
            //  Crear un nuevo objeto WorkBook
            WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
            //  Añadir una nueva WorkSheet al libro de trabajo
            WorkSheet workSheet = workBook.CreateWorkSheet("Sheet1");
            //  Definir datos de muestra
            string [,] data = {
            { "Name", "Age", "City" },
            { "Superman ", "35", "Metropolis" },
            { "Batman", "34", "Metropolis" },
            { "Flash", "30", "Central City" }
        };
            //  Rellenar la hoja de cálculo con datos
            for (int row = 0; row < data.GetLength(0); row++)
            {
                for (int col = 0; col < data.GetLength(1); col++)
                {
                    workSheet.SetCellValue(row, col, data [row, col]);
                }
            }
            //  Guardar el libro de trabajo en un archivo xlsx
            workBook.SaveAs("Demo.xlsx");
            //  Cerrar el libro
            workBook.Close();
    }
}
Imports IronXL
Friend Class Program
	Shared Sub Main(ByVal args() As String)
			'  Crear un nuevo objeto WorkBook
			Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
			'  Añadir una nueva WorkSheet al libro de trabajo
			Dim workSheet As WorkSheet = workBook.CreateWorkSheet("Sheet1")
			'  Definir datos de muestra
			Dim data(,) As String = {
				{ "Name", "Age", "City" },
				{ "Superman ", "35", "Metropolis" },
				{ "Batman", "34", "Metropolis" },
				{ "Flash", "30", "Central City" }
			}
			'  Rellenar la hoja de cálculo con datos
			For row As Integer = 0 To data.GetLength(0) - 1
				For col As Integer = 0 To data.GetLength(1) - 1
					workSheet.SetCellValue(row, col, data (row, col))
				Next col
			Next row
			'  Guardar el libro de trabajo en un archivo xlsx
			workBook.SaveAs("Demo.xlsx")
			'  Cerrar el libro
			workBook.Close()
	End Sub
End Class
VB   C#

En este ejemplo de código, primero creamos un nuevo objeto WorkBook utilizando la función Crear de IronXL() especificando el formato de archivo Excel necesario. El siguiente paso es crear una nueva hoja de cálculo dentro del libro de trabajo y explicar algunos datos de ejemplo en una matriz bidimensional. A continuación, para rellenar la hoja de cálculo con los datos de la muestra, utilizamos bucles anidados para acceder a las distintas celdas y establecer sus valores. Para liberar recursos del sistema, cerramos el libro de trabajo después de utilizar la función SaveAs() para guardarlo en un archivo llamado "SampleData.xlsx". Del mismo modo, podemos generar más de una hoja para el archivo de destino.

A continuación se muestra el archivo Excel creado como salida. Para saber más sobre la escritura de archivos Excel, consulte los ejemplos de código página.

Cómo usar Crear PowerPoint a partir de una plantilla en C#: Figura 6 - Salida de archivo Excel

Conclusión

En conclusión, utilizar C# para crear presentaciones de PowerPoint a partir de plantillas permite a los usuarios mejorar la coherencia del diseño, agilizar el flujo de trabajo y producir contenidos que tengan efecto. Los desarrolladores pueden ahorrar tiempo y trabajo a la vez que garantizan resultados profesionales automatizando el proceso de creación y utilizando las funciones de la biblioteca Microsoft PowerPoint Interop. Aprender este enfoque le ayudará como presentador, profesional de los negocios o educador a mejorar sus habilidades de presentación y a captar a su audiencia con diapositivas llamativas.

Para desarrolladores de C#, IronXL es una potente alternativa a Microsoft Excel, que ofrece compatibilidad total con Excel, un gran rendimiento y una interacción perfecta con el marco .NET. La API fácil de usar de IronXL y el control detallado sobre los documentos de Excel simplifican la escritura de Excel en C#. Esto facilita a los desarrolladores la automatización de tareas relacionadas con Excel, la exportación de datos y la generación de informes dinámicos. Ya sea que estén creando archivos de Excel para aplicaciones de escritorio, web o móviles, los desarrolladores de C# pueden contar con IronXL para agilizar las tareas relacionadas con Excel y liberar todo el potencial de Excel en sus programas de C#.

IronXL cuesta $599 cuando se lanza por primera vez. Además, los usuarios tienen la opción de pagar una cuota de afiliación de un año para obtener asistencia y actualizaciones de los productos. A cambio de una cuota, IronXL ofrece protección contra la redistribución incontrolada. Para saber más sobre el coste aproximado, visite este enlace página de licencia. Más información sobre Iron Software en este sitio web enlace.

< ANTERIOR
Cómo ver archivos Powerpoint en C#
SIGUIENTE >
.NET Regex Tester (Cómo funciona para los desarrolladores)

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de NuGet Descargas totales: 897,936 Ver licencias >
123