当前位置: 首页 > 面试题库 >

如何使用Apache POI获取PPTX幻灯片注释文本?

从劲
2023-03-14
问题内容

到目前为止,我只有一个有效的代码可以从ppt幻灯片笔记中检索文本

try {
    FileInputStream is = new FileInputStream("C:\\sample\\test.ppt");
    SlideShow ppt = new SlideShow(is);

    Slide[] slide = ppt.getSlides();
    for (int i = 0; i < slide.length; i++) {

        System.out.println(i);
        TextRun[] runs = slide[i].getNotesSheet().getTextRuns();
        if (runs.length < 1) {
            System.out.println("null");
        } else {
            for (TextRun run : runs) {
                System.out.println(" > " + run.getText());
            }
        }
    }

} catch (IOException ioe) {

}

但是,如何从pptx幻灯片笔记中检索文本?


问题答案:

经过不断的反复试验,找到了解决方案。

try {

    FileInputStream fis = new FileInputStream("C:\\sample\\sample.pptx");
    XMLSlideShow pptxshow = new XMLSlideShow(fis);

    XSLFSlide[] slide2 = pptxshow.getSlides();
    for (int i = 0; i < slide2.length; i++) {
        System.out.println(i);
        try {
            XSLFNotes mynotes = slide2[i].getNotes();
            for (XSLFShape shape : mynotes) {
                if (shape instanceof XSLFTextShape) {
                    XSLFTextShape txShape = (XSLFTextShape) shape;
                    for (XSLFTextParagraph xslfParagraph : txShape.getTextParagraphs()) {
                        System.out.println(xslfParagraph.getText());
                    }
                }
            }
        } catch (Exception e) {

        }

    }
} catch (IOException e) {

}


 类似资料:
  • 到目前为止,我只有一个从ppt幻灯片笔记中检索文本的工作代码 但如何从pptx幻灯片笔记中检索文本呢?

  • 我知道如何使用apache poi从ppt文件中提取文本,如下所示 但它提取了所有页脚,幻灯片编号,我不想要 那么如何提取除页脚和幻灯片编号以外的文本 预先感谢

  • 我有一个. PPT (PowerPoint,可转换为ODP或PPTX)文件,每张幻灯片上都有演讲者注释。我想将整个演示文稿提取为动态内容,这样我就可以创建一个演讲者备忘单,在我讲话时在手机或桌子上运行(幻灯片缩略图和演讲者注释)。我经常这样做,以至于讨厌手工操作。 这几乎很容易

  • 我试图建立一个相当粗糙的工具,将ppt/pptx文件转换为超文本标记语言格式。 我发现,不幸的是,apache poi没有为处理Power point文件提供统一的编程模型,必须编写代码来解析每种格式。 我觉得pptx文件支持比ppt支持有限得多。我面临的一个问题是获取有关pptx幻灯片背景(颜色、图案、背景图像)的信息。 我发现XSLFbackground(pptx api)类比其相应的背景类(

  • 我想使用Apache POIJava库将pptx幻灯片拆分为几个幻灯片,每个幻灯片只包含一张幻灯片。 创建一个新的XMLSlideSheet并添加幻灯片,如在几个地方(例如 https://www.tutorialspoint.com/apache_poi_ppt/apache_poi_ppt_merging.htm)所述,对我来说不起作用,因为某些布局没有正确导入:字体被更改,文本的位置被更改等

  • sp_getslide($slide,$limit=5,$order = "listorder ASC") 功能: 根据幻灯片标识获取所有幻灯片 参数: $slide:幻灯片标识,后台可以设置 $limit:最多显示几张幻灯片 $order:按什么字段(slide表的字段)排序 返回 数组,符合条件的幻灯片列表 示例: $slides=sp_getslide('top_slide');