
La aplicación Microsoft PowerPoint (en Windows, macOS y otras plataformas) permite crear presentaciones y diapositivas que contienen textos, imágenes, gráficos, animaciones y muchos otros elementos.
Para cuando termines de leer este artículo, habrás aprendido cómo crear PowerPoint en Node.js y añadir todo tipo de contenido a una presentación ejecutando código en node.js.
- Obtener la API de PowerPoint de Node.js
- Crear PowerPoint en Node.js
- Abrir PowerPoint en Node.js
- Agregar Diapositiva a PowerPoint
- Agregar Texto a PowerPoint
- Crear Gráfico en PowerPoint
- Agregar Imagen a PowerPoint
Obtener la API de PowerPoint de Node.js

Aspose.Slides para Node.js a través de Java es una poderosa API que proporciona todo lo que los desarrolladores y aplicaciones necesitan para crear, abrir, convertir y manipular documentos de PowerPoint en aplicaciones de node.js y javascript del lado del servidor.
Puedes instalar Aspose.Slides para Node.js a través de Java desde NPM ejecutando este comando:
npm install aspose.slides.via.java
Si encuentras algún problema durante el proceso de instalación, consulta esta página del producto.
Notas:
- Para métodos de instalación alternativos, consulta el artículo de Instalación de nuestra documentación.
- Presta atención a las limitaciones y diferencias del producto entre Node.js y Java. Consulta nuestro artículo de documentación Limitaciones y Diferencias y la página del producto del puente nodejs-java.
Crear PowerPoint PPT en Node.js
- Crea una instancia de la clase Presentation.
- Guarda el objeto a través del método Presentation.save(String, SaveFormat).
// Instanciar un objeto Presentation que representa un archivo de presentación
var presentation = new aspose.slides.Presentation();
// Obtener la primera diapositiva
var slide = presentation.getSlides().get_Item(0);
// Agregar contenido a la diapositiva...
// Guardar presentación
presentation.save("NuevaPresentacion.pptx", aspose.slides.SaveFormat.Pptx);
Abrir PowerPoint PPT en Node.js
- Crea una instancia de la clase Presentation y pasa la ruta al PowerPoint que deseas abrir a la construcción de la clase.
- Realiza una tarea. Puedes agregar algún contenido a una diapositiva. Puedes no hacer nada.
- Guarda la presentación.
// Instanciar un objeto Presentation que representa un archivo de presentación
var presentation = new aspose.slides.Presentation("presentation.pptx");
// Obtener la primera diapositiva
var slide = presentation.getSlides().get_Item(0);
// Agregar contenido a la diapositiva...
// Guardar presentación
presentation.save("NuevaPresentacion.pptx", aspose.slides.SaveFormat.Pptx);
Agregar Diapositiva a PowerPoint PPTX en Node.js
- Crea una instancia de la clase Presentation y pasa la ruta al PowerPoint donde deseas agregar una diapositiva.
- Instancia la clase ISlideCollection configurando una referencia al método getSlides().
- Agrega una diapositiva vacía a la presentación a través del método addEmptySlide(ILayoutSlide) expuesto por el objeto
ISlideCollection
. - Guarda la presentación actualizada utilizando el método Presentation.save(String, SaveFormat).
// Instanciar un objeto Presentation que representa un archivo de presentación
var presentation = new aspose.slides.Presentation("presentation.pptx");
// Acceder a la colección de diapositivas
var slds = presentation.getSlides();
for (var i = 0; i < presentation.getLayoutSlides().size(); i++) {
// Agregar una diapositiva vacía a la colección de Diapositivas
slds.addEmptySlide(presentation.getLayoutSlides().get_Item(i));
}
// Guardar presentación
presentation.save("NuevaPresentacion.pptx", aspose.slides.SaveFormat.Pptx);
Agregar Texto a PowerPoint PPT
- Crea una instancia de la clase Presentation y pasa la ruta al PowerPoint donde deseas agregar texto.
- Obtén la referencia de la diapositiva donde deseas agregar texto a través de su índice.
- Agrega un rectángulo a través del método addAutoShape() y obtén su referencia en un objeto IAutoShape.
- Agrega un TextFrame a la forma que contenga el texto.
- Establece tus propiedades preferidas para el texto, como el color de fondo, el tipo de relleno, etc.
- Guarda la presentación actualizada a través del método save(String, SaveFormat).
var colorBlack = java.getStaticFieldValue("java.awt.Color", "BLACK");
var colorWhite = java.getStaticFieldValue("java.awt.Color", "WHITE");
// Instanciar un objeto Presentation que representa un archivo de presentación
var presentation = new aspose.slides.Presentation("presentation.pptx");
// Obtener la primera diapositiva
var sld = presentation.getSlides().get_Item(0);
// Agregar un AutoShape de tipo Rectángulo
var ashp = sld.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 150, 75, 150, 50);
// Agregar ITextFrame al Rectángulo
ashp.addTextFrame("Hola Mundo");
// Cambiar el color del texto a Negro (que es Blanco por defecto)
ashp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getFillFormat()
.setFillType(java.newByte(aspose.slides.FillType.Solid));
ashp.getTextFrame().getParagraphs().get_Item(0).getPortions().get_Item(0).getPortionFormat().getFillFormat()
.getSolidFillColor().setColor(colorBlack);
// Cambiar el color de línea del rectángulo a Blanco
ashp.getShapeStyle().getLineColor().setColor(colorWhite);
// Eliminar cualquier formato de relleno en la forma
ashp.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
// Guardar presentación
presentation.save("NuevaPresentacion.pptx", aspose.slides.SaveFormat.Pptx);
Crear Gráfico en PowerPoint PPT
- Crea una instancia de la clase Presentation y pasa la ruta al PowerPoint donde deseas crear un gráfico.
- Obtén la referencia de la diapositiva donde deseas crear un gráfico a través de su índice.
- Agrega tu gráfico preferido a través del método addChart.
- Agrega un título al gráfico.
- Accede a la hoja de datos del gráfico.
- Borra todas las series y categorías predeterminadas.
- Agrega nuevas series y categorías.
- Agrega nuevos datos de gráfico para las series del gráfico.
- Establece un color de relleno para las series del gráfico.
- Agrega etiquetas de serie al gráfico.
- Guarda la presentación como un archivo PPT.
var colorGreen = java.getStaticFieldValue("java.awt.Color", "GREEN");
var colorRed = java.getStaticFieldValue("java.awt.Color", "RED");
// Instanciar una clase de presentación que representa un archivo PPTX
var pres = new aspose.slides.Presentation();
// Acceder a la primera diapositiva
var sld = pres.getSlides().get_Item(0);
// Agregar un gráfico con sus datos predeterminados
var chart = sld.getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 0, 0, 500, 500);
// Establecer el título del gráfico
chart.getChartTitle().addTextFrameForOverriding("Título de Ejemplo");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(java.newByte(aspose.slides.NullableBool.True));
chart.getChartTitle().setHeight(20);
chart.hasTitle();
// Establecer la primera serie para mostrar valores
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
// Establecer el índice para la hoja de datos del gráfico
var defaultWorksheetIndex = 0;
// Obtener la hoja de trabajo de datos del gráfico
var fact = chart.getChartData().getChartDataWorkbook();
// Eliminar las series y categorías generadas por defecto
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
var s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();
// Agregar nuevas series
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Serie 1"),chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Serie 2"),chart.getType());
// Agregar nuevas categorías
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Categoría 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Categoría 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Categoría 3"));
// Tomar la primera serie del gráfico
var series = chart.getChartData().getSeries().get_Item(0);
// Ahora poblar los datos de la serie
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
// Establecer el color de relleno para la serie
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorRed);
// Tomar la segunda serie del gráfico
series = chart.getChartData().getSeries().get_Item(1);
// Poblar los datos de la serie
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 30));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 10));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 60));
// Establecer el color de relleno para la serie
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorGreen);
// Crear etiquetas personalizadas para cada categoría de la nueva serie
// Establecer la primera etiqueta para mostrar el nombre de la Categoría
var lbl = series.getDataPoints().get_Item(0).getLabel();
lbl.getDataLabelFormat().setShowCategoryName(true);
// Establecer la segunda etiqueta para mostrar el nombre de la Serie
lbl = series.getDataPoints().get_Item(1).getLabel();
lbl.getDataLabelFormat().setShowSeriesName(true);
// Mostrar el valor para la tercera etiqueta
lbl = series.getDataPoints().get_Item(2).getLabel();
lbl.getDataLabelFormat().setShowValue(true);
lbl.getDataLabelFormat().setShowSeriesName(true);
lbl.getDataLabelFormat().setSeparator("/");
// Guardar la presentación con el gráfico
pres.save("NuevaPresentacion.pptx", aspose.slides.SaveFormat.Pptx);
Agregar Imagen a PPT en Node.js
- Crea una instancia de la clase Presentation.
- Obtén la referencia de la diapositiva donde deseas agregar una imagen a través de su índice.
- Crea un objeto IPPImage agregando una imagen a la IImagescollection asociada con el objeto de presentación que se usará para llenar la forma.
- Especifica el ancho y alto de la imagen.
- Crea un PictureFrame basado en el ancho y alto de la imagen a través del método
AddPictureFrame
expuesto por el objeto de forma asociado con la diapositiva referenciada. - Agrega un marco de imagen (que contiene la imagen) a la diapositiva.
- Guarda la presentación como un archivo PPT.
var fileStream = fs.createReadStream("image.png");
aspose.slides.readBytesFromStream(fileStream, function (imgArray) {
var pres = new aspose.slides.Presentation();
var img = pres.getImages().addImage(imgArray);
pres.getSlides().get_Item(0).getShapes().addPictureFrame(aspose.slides.ShapeType.Rectangle, 10, 10, 200, 200, img);
pres.save("NuevaPresentacion.pptx", aspose.slides.SaveFormat.Pptx);
});
Conclusión
En este artículo, te guiamos a través de las operaciones para crear PowerPoint en Node.js y realizar otras tareas simplemente ejecutando unas pocas líneas de código de Node.js. Puede que estés interesado en aprender más sobre la poderosa API de PowerPoint que hace que todo sea fácil.
Ver También
- Funciones de Aspose.Slides para Node.js a través de Java funciones.
- Documentación de Aspose.Slides para Node.js a través de Java documentación.