创建动态Word文档时更新图表数据

时间:2010-10-26 08:26:02

标签: c# openxml-sdk

我们有一个要求,我们需要创建动态word文档,这些word文档包含要动态替换/更新的表,图表,文本和图像。因此,我们决定创建一个模板并将文本持有者置于动态位置。要通过阅读和更新模板来创建新文档,我们决定使用OpenXML SDK 2.0。

我成功地能够替换/更新文本/表格和图像内容(对于占位符标记,我们使用内容控件,并为每个内容控件分配唯一标记。)

我仍然想弄清楚,我们将如何修改图表数据。据我所知,图表部分,它有自己的基础xlx数据文件,在其中存储数据。所以现在要更新图表部分我可以想到三种不同的解决方案。

1。)使用Open SDK更新基础xlx文件。我不确定是否可以这样做,但考虑到它只是一个xlx文件,所以我应该能够使用Open XML Sdk本身修改它。

2。)创建图表,转换为图像,然后替换图像。

3。)我还阅读了有关自定义XML的内容,我们可以使用该XML绑定内容控件。因此,我们的想法是创建一个包含Custom XML作为数据源的图表,然后动态更新数据xml。

任何建议或代码示例将不胜感激。我正在使用Open XML SDK 2.0。

1 个答案:

答案 0 :(得分:0)

我尝试使用approach1,我修改了底层的xlsx数据,但似乎不足以在Chart.xml下 - > ChartSpace - > Chart-> PlotArea - > BarChart - > BarChartSeries - >值,它保存了那些数值。所以我想我错过了一个组件,它可以从xlsx读取,然后相应地更新图表。现在我手动更新了xlsx和值,以便正确反映。