Grafieken maken in PPTX-presentaties met C++

Maak grafieken in PPTX-presentaties met server-side Aspose.Slides for C++-API’s zonder Microsoft PowerPoint.

PPTX-grafieken maken met C++

Gebruik Aspose.Slides for C++ om grafieken te maken in PPTX-presentaties. Installeer het pakket via NuGet of gebruik de volgende opdracht in de Package Manager Console.

Opdracht

PM> Install-Package Aspose.Slides.Cpp

Een grafiek maken in PPTX – C++

auto presentation = MakeObject<Presentation>();
auto slide = presentation->get_Slide(0);

// Add a chart with default data.
auto chart = slide->get_Shapes()->AddChart(ChartType::ClusteredColumn, 0, 0, 500, 500);

// Set the index of the chart data sheet.
int defaultWorksheetIndex = 0;

// Get the chart data workbook.
auto chartDataWorkbook = chart->get_ChartData()->get_ChartDataWorkbook();

// Set the chart title.
chart->get_ChartTitle()->AddTextFrameForOverriding(u"Sample Title");
chart->get_ChartTitle()->get_TextFrameForOverriding()->get_TextFrameFormat()->set_CenterText(NullableBool::True);
chart->get_ChartTitle()->set_Height(20);
chart->set_HasTitle(true);

// Delete the default generated series and categories.
chart->get_ChartData()->get_Series()->Clear();
chart->get_ChartData()->get_Categories()->Clear();

// Add series.
chart->get_ChartData()->get_Series()->Add(chartDataWorkbook->GetCell(defaultWorksheetIndex, 0, 1, ObjectExt::Box(String(u"Series 1"))), chart->get_Type());
chart->get_ChartData()->get_Series()->Add(chartDataWorkbook->GetCell(defaultWorksheetIndex, 0, 2, ObjectExt::Box(String(u"Series 2"))), chart->get_Type());

// Add categories.
chart->get_ChartData()->get_Categories()->Add(chartDataWorkbook->GetCell(defaultWorksheetIndex, 1, 0, ObjectExt::Box(String(u"Category 1"))));
chart->get_ChartData()->get_Categories()->Add(chartDataWorkbook->GetCell(defaultWorksheetIndex, 2, 0, ObjectExt::Box(String(u"Category 2"))));
chart->get_ChartData()->get_Categories()->Add(chartDataWorkbook->GetCell(defaultWorksheetIndex, 3, 0, ObjectExt::Box(String(u"Category 3"))));

// Take the first chart series.
auto series = chart->get_ChartData()->get_Series()->idx_get(0);

// Populate series data.
series->get_DataPoints()->AddDataPointForBarSeries(chartDataWorkbook->GetCell(defaultWorksheetIndex, 1, 1, ObjectExt::Box(20)));
series->get_DataPoints()->AddDataPointForBarSeries(chartDataWorkbook->GetCell(defaultWorksheetIndex, 2, 1, ObjectExt::Box(50)));
series->get_DataPoints()->AddDataPointForBarSeries(chartDataWorkbook->GetCell(defaultWorksheetIndex, 3, 1, ObjectExt::Box(30)));

// Set the fill color for the series.
series->get_Format()->get_Fill()->set_FillType(FillType::Solid);
series->get_Format()->get_Fill()->get_SolidFillColor()->set_Color(Color::get_Blue());

// Take the second chart series.
series = chart->get_ChartData()->get_Series()->idx_get(1);

// Populate series data.
series->get_DataPoints()->AddDataPointForBarSeries(chartDataWorkbook->GetCell(defaultWorksheetIndex, 1, 2, ObjectExt::Box(30)));
series->get_DataPoints()->AddDataPointForBarSeries(chartDataWorkbook->GetCell(defaultWorksheetIndex, 2, 2, ObjectExt::Box(10)));
series->get_DataPoints()->AddDataPointForBarSeries(chartDataWorkbook->GetCell(defaultWorksheetIndex, 3, 2, ObjectExt::Box(60)));

// Set the fill color for the series.
series->get_Format()->get_Fill()->set_FillType(FillType::Solid);
series->get_Format()->get_Fill()->get_SolidFillColor()->set_Color(Color::get_Orange());

// Show the category name for the first label.
auto dataLabel = series->get_DataPoints()->idx_get(0)->get_Label();
dataLabel->get_DataLabelFormat()->set_ShowCategoryName(true);

dataLabel = series->get_DataPoints()->idx_get(1)->get_Label();
dataLabel->get_DataLabelFormat()->set_ShowSeriesName(true);

// Show the value for the third label.
dataLabel = series->get_DataPoints()->idx_get(2)->get_Label();
dataLabel->get_DataLabelFormat()->set_ShowValue(true);
dataLabel->get_DataLabelFormat()->set_ShowSeriesName(true);
dataLabel->get_DataLabelFormat()->set_Separator(u"/");

// Save the PPTX file.
presentation->Save(u"column_chart.pptx", SaveFormat::Pptx);
presentation->Dispose();

Grafieken maken in PPTX-bestanden met C++

Maak met Aspose.Slides for C++ in een paar regels code een grafiek in een PPTX-presentatie.

  1. Maak een Presentation-object.
  2. Open de eerste dia.
  3. Voeg een grafiek met standaardgegevens toe.
  4. Stel de index van het gegevensblad van de grafiek in.
  5. Haal de gegevenswerkmap van de grafiek op.
  6. Stel de grafiektitel in.
  7. Verwijder de standaard gegenereerde reeksen en categorieën.
  8. Voeg reeksen en categorieën toe.
  9. Neem de eerste grafiekreeks en vul de gegevens ervan in.
  10. Stel de opvulkleur van de reeks in.
  11. Toon de categorienaam, de reeksnaam en de waarde in de gegevenslabels van de tweede reeks.
  12. Sla het PPTX-bestand op.

Systeemvereisten

Aspose.Slides for C++ ondersteunt de belangrijkste platforms en besturingssystemen. Zorg ervoor dat uw omgeving aan de volgende vereisten voldoet.

  • Microsoft Windows, Linux, macOS of een ander compatibel besturingssysteem met de ondersteunde C++-runtime.
  • De bibliotheek Aspose.Slides for C++ waarnaar in uw project wordt verwezen.

Gebouwd met Aspose.Slides

PPTX-grafieken online maken

De gratis app Aspose.Slides Chart is gebouwd met Aspose.Slides for C++, dezelfde API als in de bovenstaande code. Open de app en ontdek wat de API kan met uw eigen PPTX-bestanden.

  • Werkt in uw browser, niets te installeren.
  • Bekijk hoe Aspose.Slides grafieken maakt voordat u code schrijft.
  • Maak een grafiek van Excel- of tabelgegevens.
  • Download deze als PPTX-bestand of als afbeelding.

Wat is PPTX bestandsformaat

PPTX-bestanden zijn presentatiebestanden die zijn gemaakt met Microsoft PowerPoint en andere presentatie-apps. Anders dan het oudere binaire PPT-formaat is PPTX gebaseerd op Office Open XML. Een presentatie bevat dia’s met tekst, afbeeldingen, opmaak, animaties en andere media. Dia’s worden aan een publiek getoond als diavoorstelling met aangepaste presentatie-instellingen.

Meer lezen

Andere ondersteunde formaten voor grafieken

Met C++ kunt u ook grafieken maken in andere formaten.