彩票走势图

PPT处理控件Aspose.Slides功能演示:使用 Java 从 PowerPoint 文件中提取文本

翻译|使用教程|编辑:李显亮|2021-08-03 10:04:42.233|阅读 285 次

概述:有时需要从 PowerPoint 幻灯片中提取文本以执行文本分析。另一方面,可能希望提取文本并将其保存在文件或数据库中以供进一步处理。据此,本文介绍了如何使用 Java 从 PowerPoint 演示文稿中提取文本。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

有时需要从 PowerPoint 幻灯片中提取文本以执行文本分析。另一方面,可能希望提取文本并将其保存在文件或数据库中以供进一步处理。据此,本文介绍了如何使用 Java 从 PowerPoint 演示文稿中提取文本。特别是,您将学习如何从特定幻灯片或整个演示文稿中提取文本。

  • 从 PowerPoint 幻灯片中提取文本
  • 从 PowerPoint 演示文稿中提取文本

为了操作 PowerPoint 演示文稿,我们将使用Aspose.Slides for Java,旨在在 Java 应用程序中实现 PowerPoint 自动化功能。它还提供了一些从 PPT/PPTX 演示文稿中提取文本的简单方法。

>>你可以点击这里下载Aspose.Slides 最新版测试体验。


用 Java 从 PowerPoint 幻灯片中提取文本

以下是使用 Java 从 PowerPoint 演示文稿中的幻灯片中提取文本的步骤。

  • 使用Presentation类加载演示文稿。
  • 使用SlideUtil.getAllTextBoxes()方法将幻灯片中的所有文本框获取到ITextFrame数组中。
  • 循环遍历每个ITextFrame并使用ITextFrame.getParagraphs()方法访问其文本。
  • 从段落的每个IPortion中检索和打印文本。

以下代码示例展示了如何从 PowerPoint 幻灯片中提取文本。

//Instatiate PresentationEx class that represents a PPTX file
Presentation pptxPresentation = new Presentation("presentation.pptx");

//Get an Array of ITextFrame objects from the first slide
ITextFrame[] textFramesSlideOne = SlideUtil.getAllTextBoxes(pptxPresentation.getSlides().get_Item(1));

//Loop through the Array of TextFrames
for (int i = 0; i < textFramesSlideOne.length; i++) { //Loop through paragraphs in current TextFrame for (IParagraph para : textFramesSlideOne[i].getParagraphs()) { //Loop through portions in the current Paragraph for (IPortion port : para.getPortions()) { //Display text in the current portion System.out.println(port.getText()); //Display font height of the text System.out.println(port.getPortionFormat().getFontHeight()); //Display font name of the text System.out.println(port.getPortionFormat().getLatinFont().getFontName()); } } }

从整个 PowerPoint 演示文稿中提取文本

还可以从整个 PowerPoint 演示文稿中提取文本。以下是执行此操作的步骤。

  • 使用Presentation类加载演示文稿。
  • 使用SlideUtil.getAllTextFrames()方法获取演示文稿中的所有文本框。
  • 循环遍历每个ITextFrame并访问其段落。
  • 访问段落的各个部分并打印它们的文本。

以下代码示例展示了如何从 PowerPoint 演示文稿中提取文本。

//Instatiate PresentationEx class that represents a PPTX file
Presentation pptxPresentation = new Presentation("presentation.pptx");

//Get an Array of ITextFrame objects from the first slide
ITextFrame[] textFrames = SlideUtil.getAllTextFrames(pptxPresentation, true);

//Loop through the Array of TextFrames
for (int i = 0; i < textFrames.length; i++) { //Loop through paragraphs in current TextFrame for (IParagraph para : textFrames[i].getParagraphs()) { //Loop through portions in the current Paragraph for (IPortion port : para.getPortions()) { //Display text in the current portion System.out.println(port.getText()); } } }

如果你想试用Aspose的全部完整功能,可联系在线客服获取30天临时授权体验。


还想要更多吗?您可以点击阅读【Aspose最新资源在线文库】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP