Aspose.Words for C++不依赖Microsoft Word,可在任何C++应用程序中生成和操作Word格式文档。本文将与大家分享如何插入柱形图到文档中。
Aspose.Words 下载https://www.evget.com/product/4114提供了 InsertChart 方法,该方法已添加到 DocumentBuilder 类中。那么,让我们看看如何使用 DocumentBuilder-> InsertChart 方法将简单的柱形图插入到文档中:
如何插入柱形图。
System::SharedPtr<Document> doc = System::MakeObject<Document>(); System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc); // Add chart with default data. You can specify different chart types and sizes. System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Column, 432, 252); // Chart property of Shape contains all chart related options. System::SharedPtr<Chart> chart = shape->get_Chart(); // Get chart series collection. System::SharedPtr<ChartSeriesCollection> seriesColl = chart->get_Series(); // Check series count. std::cout << seriesColl->get_Count() << std::endl; // Delete default generated series. seriesColl->Clear(); // Create category names array, in this example we have two categories. System::ArrayPtr<System::String> categories = System::MakeArray<System::String>({u"AW Category 1", u"AW Category 2"}); // Adding new series. Please note, data arrays must not be empty and arrays must be the same size. seriesColl->Add(u"AW Series 1", categories, System::MakeArray<double>({1, 2})); seriesColl->Add(u"AW Series 2", categories, System::MakeArray<double>({3, 4})); seriesColl->Add(u"AW Series 3", categories, System::MakeArray<double>({5, 6})); seriesColl->Add(u"AW Series 4", categories, System::MakeArray<double>({7, 8})); seriesColl->Add(u"AW Series 5", categories, System::MakeArray<double>({9, 10})); System::String outputPath = dataDir + GetoutputFilePath(u"CreateColumnChart.InsertSimpleColumnChart.doc"); doc->Save(outputPath);
该代码会产生以下结果:
Add系列方法有四种不同的重载,它们涵盖了所有图表类型的所有可能的数据源变体:
System::SharedPtr<Document> doc = System::MakeObject<Document>(); System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc); // Insert Column chart. System::SharedPtr<Shape> shape = builder->InsertChart(ChartType::Column, 432, 252); System::SharedPtr<Chart> chart = shape->get_Chart(); // Use this overload to add series to any type of Bar, Column, Line and Surface charts. chart->get_Series()->Add(u"AW Series 1", System::MakeArray<System::String>({u"AW Category 1", u"AW Category 2"}), System::MakeArray<double>({1, 2})); System::String outputPath = dataDir + GetoutputFilePath(u"CreateColumnChart.InsertColumnChart.doc"); doc->Save(outputPath);
该代码会产生以下结果:
原文地址:https://www.jb51.cc/wenti/3285832.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。