使用 C++ 在 PPTX 演示文稿中创建图表
无需 Microsoft PowerPoint,使用服务器端 Aspose.Slides for C++ API 在 PPTX 演示文稿中创建图表。
使用 C++ 创建 PPTX 图表
使用 Aspose.Slides for C++ 在 PPTX 演示文稿中创建图表。从 NuGet 安装软件包,或在程序包管理器控制台中使用以下命令。
命令
PM> Install-Package Aspose.Slides.Cpp在 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();如何使用 C++ 在 PPTX 文件中创建图表
使用 Aspose.Slides for C++,只需几行代码即可在 PPTX 演示文稿中创建图表。
- 创建
Presentation对象。 - 访问第一张幻灯片。
- 添加带有默认数据的图表。
- 设置图表数据工作表的索引。
- 获取图表数据工作簿。
- 设置图表标题。
- 删除默认生成的系列和类别。
- 添加系列和类别。
- 获取第一个图表系列并填充其数据。
- 设置系列的填充颜色。
- 在第二个系列的数据标签中显示类别名称、系列名称和值。
- 保存 PPTX 文件。
系统要求
Aspose.Slides for C++ 支持主要的平台和操作系统。请确保您的环境满足以下先决条件。
- 装有受支持 C++ 运行时的 Microsoft Windows、Linux、macOS 或其他兼容操作系统。
- 在项目中引用 Aspose.Slides for C++ 库。
基于 Aspose.Slides 构建
在线创建 PPTX 图表
免费的 Aspose.Slides Chart 应用基于 Aspose.Slides for C++ 构建,与上方代码使用的是同一 API。打开它,看看 API 能如何处理您自己的 PPTX 文件。
- 在浏览器中运行,无需安装任何软件。
- 在编写代码之前,先了解 Aspose.Slides 如何创建图表。
- 根据 Excel 或表格数据创建图表。
- 将其下载为 PPTX 文件或图像。
什么是PPTX文件格式
PPTX 文件是使用 Microsoft PowerPoint 和其他演示应用程序创建的演示文稿文件。与较旧的二进制 PPT 格式不同,PPTX 基于 Office Open XML。演示文稿包含幻灯片,其中可以包含文本、图像、格式、动画和其他媒体。幻灯片以带有自定义设置的幻灯片放映形式向观众展示。
图表支持的其他格式
使用 C++,您还可以在其他格式中创建图表。