Aspose.slides记录(四)
来源:互联网 发布:手机魔术卡软件 编辑:程序博客网 时间:2024/05/17 08:03
图表
图表也是PPT中一个特殊的插入样式,该样式外显数据在openxml里存储在/charts/chart([0-9]+).xml中,但是实际数据存放在PPT的内嵌excel里面,本质上等同于一个内嵌excel.
获取方式与前文类似,代码如下:
if(shape instanceof Chart){ //图表 Chart chart = (Chart)shape; //TODO }
图表中需读取的信息分为图表标题、坐标轴、单元格数据及单元格标签,其中单元格数据为纯数字,按照用户需求不需要读取,因此本文仅讨论其他种类的信息获取.
标题
ITextFrame titleTextFrame = chart.getChartTitle().getTextFrameForOverriding();if ( titleTextFrame != null) { IParagraphCollection titleParas = titleTextFrame.getParagraphs(); for (int paraNum = 0,len = titleParas.getCount(); paraNum < len; paraNum++) { IPortionCollection titlePortions = titleParas.get_Item(paraNum).getPortions(); readStyle(titlePortions); }}
坐标轴
坐标轴类型如果为日期坐标轴,读取的数据为时间的毫秒数,与现实的文字不符,需再进行日期格式的转换
// 系列IChartSeriesCollection seriesCol = chart.getChartData().getSeries(); int xSize = seriesCol.size(); for (int x =0; x < xSize ;x++) { if(seriesCol.get_Item(x) != null && seriesCol.get_Item(x).getName() !=null){ String seriesValue = seriesCol.get_Item(x).getName().toString(); }} // 类别IChartCategoryCollection categoryCol = chart.getChartData().getCategories();int ySize = categoryCol.size();for(int y=0;y <ySize; y++){ if(categoryCol.get_Item(y) != null && categoryCol.get_Item(y).getValue() != null){ String categoryValue = categoryCol.get_Item(y).getValue().toString(); }}
单元格标签
单元格标签同坐标轴一样,aspose.slides取值只能取到String对象,而不能取到postion对象,因此不包含样式,只包含文本
// 单元格标签int size = chart.getChartData().getSeries().size();for (int m = 0; m < size; m++) { IChartSeries series = chart.getChartData().getSeries().get_Item(m); int len = series.getDataPoints().size(); for (int n = 0; n < len; n++) { String labelValue = series.getDataPoints().get_Item(n).getLabel() .getTextFrameForOverriding().getText(); }}
阅读全文
0 0
- Aspose.slides记录(四)
- Aspose.slides记录(一)
- Aspose.slides记录(二)
- Aspose.slides记录(三)
- Aspose.slides记录(五)
- aspose.slides添加文本框代码反编译
- ppt 在线预览类库:Aspose.Slides.dll
- 【版本更新】Aspose.Slides V17.10发布 | 支持免费下载
- 【更新】PPT管理控件Aspose.Slides V17.5发布 | 附下载
- PPT控件Aspose.Slides V17.7发布 | 支持在文本框中添加列
- PPT组件Aspose.Slides V17.8发布 | 支持PP2010 PPTX与嵌入式视频
- PPT组件Aspose.Slides V17.9发布 | 改进导出HTML性能
- Aspose
- aspose
- c#操作excel方式四-Aspose控件
- C# Aspose.Word 操作word文档【四】
- Aspose.Slides 12月新版17.12发布 | 修复了17.7版tomcat 8.0.21无法启动的bug
- Lecture Slides
- Javascript设计模式-06-代理模式
- js数租,对象, 数组,字符串,函数,变量,int与String 型转化,String 转化为js 中内部代码,编码格式转化,<a>标签的死链接
- postgre数据库字符集和编码转换
- 【MongoDB】如何将MongoDB改造成内存数据库
- 包名package中开头字母p报错解决
- Aspose.slides记录(四)
- Javascript设计模式-07-观察者模式(发布订阅模式)
- Maven项目构建工具和Nexus私服
- TIM_GetCounter与TIM_GetCapture1的区别
- notifier chain — 内核通知链
- 安卓基础5:网络编程2
- Android PopupWindow与软键盘的遮挡问题
- Javascript设计模式-08-策略模式
- 跳转指令JMP(04)和跳转结束指令JME(05)