
Приложение Microsoft PowerPoint (на Windows, macOS и других платформах) позволяет создавать презентации и слайды, содержащие тексты, изображения, диаграммы, анимации и многие другие элементы.
К моменту, когда вы закончите читать эту статью, вы узнаете как создать PowerPoint в Node.js и добавить все виды содержимого в презентацию, выполняя код в node.js.
- Получить API PowerPoint для Node.js
- Создать PowerPoint в Node.js
- Открыть PowerPoint в Node.js
- Добавить слайд в PowerPoint
- Добавить текст в PowerPoint
- Создать диаграмму в PowerPoint
- Добавить изображение в PowerPoint
Получить API PowerPoint для Node.js

Aspose.Slides для Node.js через Java — это мощный API, который предоставляет все необходимое разработчикам и приложениям для создания, открытия, конвертирования и манипулирования документами PowerPoint в node.js и javascript на стороне сервера.
Вы можете установить Aspose.Slides для Node.js через Java из NPM с помощью следующей команды:
npm install aspose.slides.via.java
Если вы столкнетесь с какими-либо проблемами во время установки, смотрите эту страницу продукта.
Примечания:
- Для альтернативных методов установки смотрите статью Установка из нашей документации.
- Обратите внимание на ограничения и различия между Node.js и Java. Смотрите нашу документацию Статья об ограничениях и различиях и страницу продукта моста nodejs-java.
Создать PowerPoint PPT в Node.js
- Создайте экземпляр класса Presentation.
- Сохраните объект через метод Presentation.save(String, SaveFormat).
// Инициализируйте объект Presentation, представляющий файл презентации
var presentation = new aspose.slides.Presentation();
// Получите первый слайд
var slide = presentation.getSlides().get_Item(0);
// Добавьте содержимое на слайд...
// Сохраните презентацию
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);
Открыть PowerPoint PPT в Node.js
- Создайте экземпляр класса Presentation и передайте путь к PowerPoint, который вы хотите открыть, в конструктор класса.
- Выполните задачу. Вы можете добавить какое-то содержимое на слайд. Вы можете ничего не делать.
- Сохраните презентацию.
// Инициализируйте объект Presentation, представляющий файл презентации
var presentation = new aspose.slides.Presentation("presentation.pptx");
// Получите первый слайд
var slide = presentation.getSlides().get_Item(0);
// Добавьте содержимое на слайд...
// Сохраните презентацию
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);
Добавить слайд в PowerPoint PPTX в Node.js
- Создайте экземпляр класса Presentation и передайте путь к PowerPoint, в который вы хотите добавить слайд.
- Инициализируйте класс ISlideCollection, установив ссылку на метод getSlides().
- Добавьте пустой слайд в презентацию через метод addEmptySlide(ILayoutSlide) объекта
ISlideCollection
. - Сохраните обновленную презентацию, используя метод Presentation.save(String, SaveFormat).
// Инициализируйте объект Presentation, представляющий файл презентации
var presentation = new aspose.slides.Presentation("presentation.pptx");
// Получите коллекцию слайдов
var slds = presentation.getSlides();
for (var i = 0; i < presentation.getLayoutSlides().size(); i++) {
// Добавьте пустой слайд в коллекцию слайдов
slds.addEmptySlide(presentation.getLayoutSlides().get_Item(i));
}
// Сохраните презентацию
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);
Добавить текст в PowerPoint PPT
- Создайте экземпляр класса Presentation и передайте путь к PowerPoint, в который вы хотите добавить текст.
- Получите ссылку на слайд, на который вы хотите добавить текст, через его индекс.
- Добавьте прямоугольник через метод addAutoShape() и получите его ссылку в объекте IAutoShape.
- Добавьте TextFrame к форме, содержащей текст.
- Установите предпочтительные свойства для текста, такие как цвет заливки, тип заливки и т. д.
- Сохраните обновленную презентацию через метод save(String, SaveFormat).
var colorBlack = java.getStaticFieldValue("java.awt.Color", "BLACK");
var colorWhite = java.getStaticFieldValue("java.awt.Color", "WHITE");
// Инициализируйте объект Presentation, представляющий файл презентации
var presentation = new aspose.slides.Presentation("presentation.pptx");
// Получите первый слайд
var sld = presentation.getSlides().get_Item(0);
// Добавьте AutoShape типа Прямоугольник
var ashp = sld.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 150, 75, 150, 50);
// Добавьте ITextFrame к Прямоугольнику
ashp.addTextFrame("Привет, мир!");
// Измените цвет текста на черный (который по умолчанию белый)
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);
// Измените цвет линии прямоугольника на белый
ashp.getShapeStyle().getLineColor().setColor(colorWhite);
// Удалите любое форматирование заливки в форме
ashp.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));
// Сохраните презентацию
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);
Создать диаграмму в PowerPoint PPT
- Создайте экземпляр класса Presentation и передайте путь к PowerPoint, в котором вы хотите создать диаграмму.
- Получите ссылку на слайд, на котором вы хотите создать диаграмму, через его индекс.
- Добавьте свою предпочтительную диаграмму через метод addChart.
- Добавьте заголовок диаграммы.
- Получите рабочий лист данных диаграммы.
- Очистите все стандартные серии и категории.
- Добавьте новые серии и категории.
- Добавьте новые данные диаграммы для серий диаграммы.
- Установите цвет заливки для серий диаграммы.
- Добавьте метки серий диаграммы.
- Сохраните презентацию как PPT файл.
var colorGreen = java.getStaticFieldValue("java.awt.Color", "GREEN");
var colorRed = java.getStaticFieldValue("java.awt.Color", "RED");
// Инициализируйте класс презентации, представляющий файл PPTX
var pres = new aspose.slides.Presentation();
// Получите первый слайд
var sld = pres.getSlides().get_Item(0);
// Добавьте диаграмму с ее стандартными данными
var chart = sld.getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 0, 0, 500, 500);
// Установите заголовок диаграммы
chart.getChartTitle().addTextFrameForOverriding("Пример заголовка");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(java.newByte(aspose.slides.NullableBool.True));
chart.getChartTitle().setHeight(20);
chart.hasTitle();
// Установите первую серию для отображения значений
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
// Установите индекс для рабочего листа данных диаграммы
var defaultWorksheetIndex = 0;
// Получите рабочий лист данных диаграммы
var fact = chart.getChartData().getChartDataWorkbook();
// Удалите стандартные сгенерированные серии и категории
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
var s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();
// Добавьте новые серии
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Серия 1"),chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Серия 2"),chart.getType());
// Добавьте новые категории
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Категория 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Категория 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Категория 3"));
// Возьмите первую серию диаграммы
var series = chart.getChartData().getSeries().get_Item(0);
// Теперь заполняем данные серии
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));
// Установите цвет заливки для серии
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorRed);
// Возьмите вторую серию диаграммы
series = chart.getChartData().getSeries().get_Item(1);
// Заполните данные серии
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));
// Установите цвет заливки для серии
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorGreen);
//Создайте пользовательские метки для каждой категории для новых серий
// Установите первую метку, чтобы показать имя категории
var lbl = series.getDataPoints().get_Item(0).getLabel();
lbl.getDataLabelFormat().setShowCategoryName(true);
// Установите вторую метку, чтобы показать имя серии
lbl = series.getDataPoints().get_Item(1).getLabel();
lbl.getDataLabelFormat().setShowSeriesName(true);
// Покажите значение для третьей метки
lbl = series.getDataPoints().get_Item(2).getLabel();
lbl.getDataLabelFormat().setShowValue(true);
lbl.getDataLabelFormat().setShowSeriesName(true);
lbl.getDataLabelFormat().setSeparator("/");
// Сохраните презентацию с диаграммой
pres.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);
Добавить изображение в PPT в Node.js
- Создайте экземпляр класса Presentation.
- Получите ссылку на слайд, на который вы хотите добавить изображение, через его индекс.
- Создайте объект IPPImage добавив изображение в IImagescollection, связанное с объектом презентации, который будет использован для заполнения формы.
- Укажите ширину и высоту изображения.
- Создайте PictureFrame на основе ширины и высоты изображения через метод
AddPictureFrame
, доступный объектом формы, связанным с указанным слайдом. - Добавьте рамку изображения (содержащую изображение) на слайд.
- Сохраните презентацию как файл 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("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);
});
Заключение
В этой статье мы провели вас через операции по созданию PowerPoint в Node.js и выполнению других задач, просто запуская несколько строк кода Node.js. Вам может быть интересно узнать больше о мощном API PowerPoint, который делает все проще.
Также смотрите
- Возможности Aspose.Slides для Node.js через Java функции.
- Документация Aspose.Slides для Node.js через Java документация.