温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

OPENXML中修改统计图的注意事项有哪些

发布时间:2021-12-20 17:46:20 来源:亿速云 阅读:124 作者:小新 栏目:大数据

这篇文章主要为大家展示了“OPENXML中修改统计图的注意事项有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“OPENXML中修改统计图的注意事项有哪些”这篇文章吧。

在word文档中,可以通过excel表格,在文档中,建立一个统计图,在程序开发中,可以找到这个统计图,修改一系列的数据,从而达到更新统计图的效果,使用openxml库,可以达到修改数据的效果。

用解压缩工具打开一个word文档的示例,word文档中包含统计图,在结构中发现word文档中存储了一个excel附件,在embeddings的文件夹中,所以修改统计图的时候,一定要把此excel文件也要同步修改。

OPENXML中修改统计图的注意事项有哪些

OPENXML中修改统计图的注意事项有哪些

在文档中要先找到统计图的元素,在开发中,使用ChartParts,根据chart的个数,选择要修改的chart元素。

       var _chartParts = _mainDocPart.ChartParts;

找到统计图的附件文件,获取其中的excel文件,之后就是处理excel文件中的数据,修改execel中的行列数据,具体方法参见C#使用 OpenXML SDK读取Excel文档。

       var _empart = _chartParts.First().EmbeddedPackagePart;

      Stream stream = _empart.GetStream();

    using (SpreadsheetDocument ssDoc =SpreadsheetDocument.Open(stream, true))  

需要注意的是,假如统计图的横轴是以时间为单位,需要用ToOADate(OLE 自动化日期)进行相应的转换,

_dateParm.ToOADate().ToString();

修改完excel后,打开word发现统计图的数据并没有更新,点击一下编辑,统计图倒是更新了,是因为统计图中也有数据的缓存,需要同步进行修改。

从统计图找到NumericValue的值,根据循环,将其中的文本进行修改。

 LineChartSeries bs1 = _chartPart.ChartSpace.Descendants<LineChartSeries>().First();

               IEnumerable<NumericValue> _numCaches = bs1.Descendants<NumericValue>();

以上是“OPENXML中修改统计图的注意事项有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI