Aspose Team is pleased to announce the release of Aspose.Cells for C++ 18.4.0. This release supports to create and manipulate charts and shapes in XLS, XLSX, XLSM and XLSB file formats. These were the long-awaited features for the users. It also includes other enhancements and fixes that further improve the overall stability of the API. Please check the detailed release notes in order to get an idea about what is new and what has been enhanced with this revision of Aspose.Cells for C++.
While you are downloading the API build to give it a try, here is a list of added features along with a few code snippets for quick testing.
Create and Customize MS Excel Charts
A chart is a visual display of information. Aspose.Cells for C++ now allows developers to visualize information in charts just as Microsoft Excel does. Creating charts at runtime, based on the data in a spreadsheet, is one of Aspose.Cells’ demanding feature. Aspose.Cells supports to create both Standard and Customized charts. Below, we will show a few examples with sample files on how to create some common MS Excel chart types using Aspose.Cells API.
The following code demonstrates the use of Aspose.Cells for C++ API to create a Line chart in the spreadsheet.
// Output directory path StringPtr outDir = new String("..\\Data\\02_OutputDirectory\\"); // Path of output excel file StringPtr outputChartTypeLine = outDir->StringAppend(new String("outputChartTypeLine.xlsx")); // Create a new workbook intrusive_ptr workbook = Factory::CreateIWorkbook(); // Get first worksheet which is created by default intrusive_ptr worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0); // Adding sample values to cells worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(50); worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(100); worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(150); worksheet->GetICells()->GetObjectByIndex(new String("B1"))->PutValue(4); worksheet->GetICells()->GetObjectByIndex(new String("B2"))->PutValue(20); worksheet->GetICells()->GetObjectByIndex(new String("B3"))->PutValue(50); // Adding a chart to the worksheet int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Line, 5, 0, 20, 8); // Accessing the instance of the newly added chart intrusive_ptr chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex); // Adding SeriesCollection (chart data source) to the chart ranging from "A1" cell to "B3" chart->GetNISeries()->Add(new String("A1:B3"), true); // Saving the Excel file workbook->Save(outputChartTypeLine);
See the document on how to create standard and custom charts for your reference.
Insert/Extract OLE Objects into/from the Worksheet
Aspose.Cells allow you to insert an OLE object inside the worksheet. Please use Worksheet->GetIOleObjects()->Add() method for this purpose. You will need image in bytes that will be used to display the OLE object inside the worksheet and Ole object data bytes that will be your actual object.
See the document on how to insert OLE Objects into the Worksheets for your reference.
Moreover, you can extract the OLE Object from the spreadsheet, see the document on how to extract Ole Objects from Excel workbook for your reference.
Read and Manipulate MS Excel 2016 Charts
Aspose.Cells also supports reading and manipulating Microsoft Excel 2016 charts which are not present in Microsoft Excel 2013 or earlier versions. See the document on how to read and manipulate MS Excel 2016 charts for your reference.
Aspose.Cells for C++ Resources
The resources, you may need to accomplish your tasks:
- Home of Aspose.Cells for C++ API.
- Aspose.Cells for C++ Downloads.
- Aspose.Cells for C++ Documentation – up-to-date documentation containing Programmer’s Guide, Knowledge Base and much more.
- Aspose.Cells Product Family Forum – post your technical questions and queries, or any other problem you are facing while working with Aspose.Cells APIs.
- Enable Blog Subscription – do not limit yourself, you can keep yourself updated with the latest news on Aspose.Cells APIs, new features, fixes and other API related topics by subscribing to Aspose.Cells blog.
Keeping the Aspose tradition, you are welcome to shape the upcoming releases of Aspose.Cells for C++ API by posting your suggestions and concerns in the Aspose.Cells support forum.