Create PowerPoint in Node.js

Додаток Microsoft PowerPoint (на Windows, macOS та інших платформах) дозволяє вам створювати презентації та слайд-шоу, що містять тексти, зображення, графіки, анімації та багато інших елементів.

До моменту, коли ви закінчите читати цю статтю, ви дізнаєтеся як створити PowerPoint у Node.js і додати всі види вмісту до презентації, виконуючи код у node.js.

Отримати API PowerPoint для Node.js

Aspose.Slides Node.js PowerPoint API

Aspose.Slides для Node.js через Java — це потужний API, який надає все, що потрібно розробникам і програмам для створення, відкриття, конвертації та маніпуляції документами PowerPoint у node.js та серверних додатках javascript.

Ви можете встановити Aspose.Slides для Node.js через Java з NPM за допомогою цієї команди:

npm install aspose.slides.via.java

Якщо ви зіткнетеся з будь-якими проблемами під час процесу установки, дивіться цю сторінку продукту.

Примітки:

Створити PowerPoint PPT у Node.js

  1. Створіть екземпляр класу Presentation.
  2. Збережіть об’єкт за допомогою методу 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

  1. Створіть екземпляр класу Presentation і передайте шлях до PowerPoint, який ви хочете відкрити, до конструктора класу.
  2. Виконайте завдання. Ви можете додати деякий вміст до слайду. Ви можете нічого не робити.
  3. Збережіть презентацію.
// Ініціалізуйте об'єкт 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

  1. Створіть екземпляр класу Presentation і передайте шлях до PowerPoint, куди ви хочете додати слайд.
  2. Ініціалізуйте клас ISlideCollection, встановивши посилання на метод getSlides().
  3. Додайте порожній слайд до презентації за допомогою методу addEmptySlide(ILayoutSlide) об’єкта ISlideCollection.
  4. Збережіть оновлену презентацію за допомогою методу 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

  1. Створіть екземпляр класу Presentation і передайте шлях до PowerPoint, куди ви хочете додати текст.
  2. Отримайте посилання на слайд, куди ви хочете додати текст, за його індексом.
  3. Додайте прямокутник за допомогою методу addAutoShape() та отримайте його посилання в об’єкті IAutoShape.
  4. Додайте TextFrame до форми, що містить текст.
  5. Встановіть ваші улюблені властивості для тексту, такі як колір заливки, тип заливки тощо.
  6. Збережіть оновлену презентацію за допомогою методу 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 типу Rectangle
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

  1. Створіть екземпляр класу Presentation і передайте шлях до PowerPoint, де ви хочете створити графік.
  2. Отримайте посилання на слайд, де ви хочете створити графік, за його індексом.
  3. Додайте ваш улюблений графік через метод addChart.
  4. Додайте заголовок графіка.
  5. Доступ до робочого аркуша графіка.
  6. Очистіть всі стандартні серії та категорії.
  7. Додайте нові серії та категорії.
  8. Додайте нові дані графіка для серій графіка.
  9. Встановіть колір заливки для серії графіка.
  10. Додайте мітки серій графіка.
  11. Збережіть презентацію як файл 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

  1. Створіть екземпляр класу Presentation.
  2. Отримайте посилання на слайд, куди ви хочете додати зображення, за його індексом.
  3. Створіть об’єкт IPPImage шляхом додавання зображення до колекції IImagescollection, пов’язаної з об’єктом презентації, що буде використовуватися для заповнення форми.
  4. Вкажіть ширину та висоту зображення.
  5. Створіть PictureFrame на основі ширини та висоти зображення через метод AddPictureFrame, що відкритий об’єктом форми, пов’язаним з посиланням на слайд.
  6. Додайте рамку зображення (що містить зображення) до слайду.
  7. Збережіть презентацію як файл 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, який робить все легким.

Дивіться також