Java 如何使用Apache';以编程方式从Powerpoint演示文稿中读取图形值;是波伊吗?
我有一个带图形的Powerpoint演示文稿,我想使用Java和。当我使用Powerpoint编辑图形数据时,会打开一个Excel窗口,其中包含这些值,我希望从Java应用程序中访问这些值Java 如何使用Apache';以编程方式从Powerpoint演示文稿中读取图形值;是波伊吗?,java,apache-poi,powerpoint,Java,Apache Poi,Powerpoint,我有一个带图形的Powerpoint演示文稿,我想使用Java和。当我使用Powerpoint编辑图形数据时,会打开一个Excel窗口,其中包含这些值,我希望从Java应用程序中访问这些值 如何以编程方式访问图形的值?在第一部分中,我们需要导航到XSLFChart对象: final String filename = "resources/fptbenchmark/Powerpoint Import.pptx"; final XMLSlideShow ppt = new XMLSlideShow
如何以编程方式访问图形的值?在第一部分中,我们需要导航到
XSLFChart
对象:
final String filename = "resources/fptbenchmark/Powerpoint Import.pptx";
final XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(filename));
final XSLFSlide slide = ppt.getSlides()[5];
幻灯片包含不同的部分(getRelations()
),其中一部分应该
包含XSLFChart
:
final List<POIXMLDocumentPart> relations = slide.getRelations();
assert relations.size() == 3;
final XSLFChart xslfChart = (XSLFChart)relations.get(2);
CTChart ctChart = xslfChart.getCTChart();
您可以从CTChart
开始导航此树:
final List<POIXMLDocumentPart> relations = slide.getRelations();
assert relations.size() == 3;
final XSLFChart xslfChart = (XSLFChart)relations.get(2);
CTChart ctChart = xslfChart.getCTChart();
由于有一个
标记,因此可以调用关联的成员函数
访问它:
CTPlotArea plotArea = ctChart.getPlotArea();
从那以后,你应该可以四处导航了
List<CTNumVal> ptList = plotArea.getScatterChartList().get(1)
.getSerList().get(0)
.getXVal()
.getNumRef()
.getNumCache()
.getPtList();
参考资料