Vytvoření prezentace PowerPoint v Node.js

Aplikace Microsoft PowerPoint (na Windows, macOS a dalších platformách) vám umožňuje vytvářet prezentace a slideshow obsahující texty, obrázky, grafy, animace a mnoho dalších prvků.

Když dočtete tento článek, naučíte se jak vytvořit PowerPoint v Node.js a přidat všechny druhy obsahu do prezentace spuštěním kódu v node.js.

Získat Node.js PowerPoint API

Aspose.Slides Node.js PowerPoint API

Aspose.Slides pro Node.js prostřednictvím Javy je silné API, které poskytuje vše, co vývojáři a aplikace potřebují k vytvoření, otevření, převodu a manipulaci s dokumenty PowerPoint v node.js a javascriptových serverových aplikacích.

Můžete nainstalovat Aspose.Slides pro Node.js prostřednictvím Javy z NPM spuštěním tohoto příkazu:

npm install aspose.slides.via.java

Pokud narazíte na jakékoli problémy během instalačního procesu, podívejte se na tuto stránku produktu.

Poznámky:

Vytvoření PowerPoint PPT v Node.js

  1. Vytvořte instanci třídy Presentation.
  2. Uložte objekt prostřednictvím metody Presentation.save(String, SaveFormat).
// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation();

// Get the first slide
var slide = presentation.getSlides().get_Item(0);

// Add content to slide...

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

Otevření PowerPoint PPT v Node.js

  1. Vytvořte instanci třídy Presentation a předáte cestu k PowerPointu, který chcete otevřít, konstruktoru třídy.
  2. Proveďte úkol. Můžete přidat nějaký obsah na snímek. Můžete nic nedělat.
  3. Uložte prezentaci.
// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation("presentation.pptx");

// Get the first slide
var slide = presentation.getSlides().get_Item(0);

// Add content to slide...

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

Přidání snímku do PowerPoint PPTX v Node.js

  1. Vytvořte instanci třídy Presentation a předáte cestu k PowerPointu, kde chcete přidat snímek.
  2. Instancujte třídu ISlideCollection nastavením reference na metodu getSlides().
  3. Přidejte prázdný snímek do prezentace prostřednictvím metody addEmptySlide(ILayoutSlide) vystavené objektem ISlideCollection.
  4. Uložte aktualizovanou prezentaci pomocí metody Presentation.save(String, SaveFormat).
// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation("presentation.pptx");

// Access the slides collection
var slds = presentation.getSlides();

for (var i = 0; i < presentation.getLayoutSlides().size(); i++) {
	// Add an empty slide to the Slides collection
	slds.addEmptySlide(presentation.getLayoutSlides().get_Item(i));
}

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

Přidání textu do PowerPoint PPT

  1. Vytvořte instanci třídy Presentation a předáte cestu k PowerPointu, kde chcete přidat nějaký text.
  2. Získejte referenci snímku, do kterého chcete přidat nějaký text, podle jeho indexu.
  3. Přidejte obdélník prostřednictvím metody addAutoShape() a získejte jeho referenci v objektu IAutoShape.
  4. Přidejte TextFrame k tvaru obsahujícímu text.
  5. Nastavte své preferované vlastnosti pro text, jako je barva výplně, typ výplně atd.
  6. Uložte aktualizovanou prezentaci prostřednictvím metody save(String, SaveFormat).
var colorBlack = java.getStaticFieldValue("java.awt.Color", "BLACK");
var colorWhite = java.getStaticFieldValue("java.awt.Color", "WHITE");

// Instantiate a Presentation object that represents a presentation file
var presentation = new aspose.slides.Presentation("presentation.pptx");

// Get the first slide
var sld = presentation.getSlides().get_Item(0);

// Add an AutoShape of Rectangle type
var ashp = sld.getShapes().addAutoShape(aspose.slides.ShapeType.Rectangle, 150, 75, 150, 50);

// Add ITextFrame to the Rectangle
ashp.addTextFrame("Hello World");

// Change the text color to Black (which is White by default)
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);

// Change the line color of the rectangle to White
ashp.getShapeStyle().getLineColor().setColor(colorWhite);

// Remove any fill formatting in the shape
ashp.getFillFormat().setFillType(java.newByte(aspose.slides.FillType.NoFill));

// Save presentation
presentation.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

Vytvoření grafu v PowerPoint PPT

  1. Vytvořte instanci třídy Presentation a předáte cestu k PowerPointu, kde chcete vytvořit graf.
  2. Získejte referenci snímku, kde chcete vytvořit graf, podle jeho indexu.
  3. Přidejte svůj preferovaný graf prostřednictvím metody addChart.
  4. Přidejte název grafu.
  5. Získejte datový list grafu.
  6. Odstraňte všechny výchozí série a kategorie.
  7. Přidejte nové série a kategorie.
  8. Přidejte nová data grafu pro sérii grafu.
  9. Nastavte barvu výplně pro sérii grafu.
  10. Přidejte popisky sérií grafu.
  11. Uložte prezentaci jako soubor PPT.
var colorGreen = java.getStaticFieldValue("java.awt.Color", "GREEN");
var colorRed = java.getStaticFieldValue("java.awt.Color", "RED");

// Instantiate a presentation class that represents a PPTX file
var pres = new aspose.slides.Presentation();

// Access the first slide
var sld = pres.getSlides().get_Item(0);

// Add a chart with its default data
var chart = sld.getShapes().addChart(aspose.slides.ChartType.ClusteredColumn, 0, 0, 500, 500);

// Set the chart Title
chart.getChartTitle().addTextFrameForOverriding("Ukázkový název");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(java.newByte(aspose.slides.NullableBool.True));
chart.getChartTitle().setHeight(20);
chart.hasTitle();

// Set the first series to show values
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);

// Set the index for the chart data sheet
var defaultWorksheetIndex = 0;

// Get the chart data WorkSheet
var fact = chart.getChartData().getChartDataWorkbook();

// Delete the default generated series and categories
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
var s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();

// Add new series
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Série 1"), chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Série 2"), chart.getType());

// Add new categories
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Kategorie 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Kategorie 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Kategorie 3"));

// Take the first chart series
var series = chart.getChartData().getSeries().get_Item(0);

// Now populates the series data
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));

// Set the fill color for series
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorRed);

// Take the second chart series
series = chart.getChartData().getSeries().get_Item(1);

// Populate series data
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));

// Set the fill color for the series
series.getFormat().getFill().setFillType(java.newByte(aspose.slides.FillType.Solid));
series.getFormat().getFill().getSolidFillColor().setColor(colorGreen);

//Create custom labels for each categories for the new series
// Set the first label to show Category name
var lbl = series.getDataPoints().get_Item(0).getLabel();
lbl.getDataLabelFormat().setShowCategoryName(true);

// Set the second label to show Series name
lbl = series.getDataPoints().get_Item(1).getLabel();
lbl.getDataLabelFormat().setShowSeriesName(true);

// Show value for the third label
lbl = series.getDataPoints().get_Item(2).getLabel();
lbl.getDataLabelFormat().setShowValue(true);
lbl.getDataLabelFormat().setShowSeriesName(true);
lbl.getDataLabelFormat().setSeparator("/");

// Save the presentation with chart
pres.save("NewPresentation.pptx", aspose.slides.SaveFormat.Pptx);

Přidání obrázku do PPT v Node.js

  1. Vytvořte instanci třídy Presentation.
  2. Získejte referenci snímku, do kterého chcete přidat obrázek, podle jeho indexu.
  3. Vytvořte objekt IPPImage přidáním obrázku do IImagescollection přidruženého k objektu prezentace, který bude použit k vyplnění tvaru.
  4. Určete šířku a výšku obrázku.
  5. Vytvořte PictureFrame na základě šířky a výšky obrázku prostřednictvím metody AddPictureFrame vystavené objektem tvaru spojeným s referencovaným snímkem.
  6. Přidejte rámeček obrázku (obsahující obrázek) na snímek.
  7. Uložte prezentaci jako soubor 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);    
});

Závěr

V tomto článku jsme vás provedli operacemi na vytváření PowerPointu v Node.js a provádění dalších úkolů jednoduše spuštěním několika řádků kódu Node.js. Můžete mít zájem se dozvědět více o silném PowerPoint API, které vše usnadňuje.

Podívejte se také

  • Aspose.Slides pro Node.js prostřednictvím Javy funkce.
  • Aspose.Slides pro Node.js prostřednictvím Javy dokumentace.