1

在日常学习和工作中,我们经常会用到PPT。例如企业产品宣传、学校讲课、演讲等方面。同时在制作PPT过程中,我们会习惯性地为幻灯片添加备注信息,其主要作用是对幻灯片的内容做补充注释。最重要的是它只在演讲者的电脑上显示而不在观众所看到的屏幕上显示,以此有助于演讲者更好的发挥。本篇将通过使用Java程序来演示如何添加、读取和删除PPT中的备注信息。

使用工具:Free Spire.Presentation for Java(免费版)

Jar文件获取及导入:

方法1:通过官方网站下载获取jar包。解压后将lib文件夹下的Spire.Presentation.jar文件导入Java程序。(如下图)
安装图片.gif

方法2:通过maven仓库安装导入。具体安装教程详见此网页

【示例1】添加备注信息

import com.spire.presentation.*;
public class AddSpeakerNotes {
    public static void main(String[] args) throws Exception {
        //加载PowerPoint文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("D:\\Desktop\\Sample.pptx");

        //获取第四张幻灯片
        ISlide slide = ppt.getSlides().get(3);
        
        //添加备注幻灯片到第四张幻灯片
        NotesSlide notesSlide = slide.addNotesSlide();
        notesSlide.getNotesTextFrame().getParagraphs().removeAt(0);

        //添加备注标题
        ParagraphEx paragraph = new ParagraphEx();
        paragraph.setText("备注:");
        notesSlide.getNotesTextFrame().getParagraphs().append(paragraph);

        //添加第一项备注
        paragraph = new ParagraphEx();
        paragraph.setText("企业要制定一定的规章制度,要严格控制电能的使用,还要有奖罚激励措施。");
        notesSlide.getNotesTextFrame().getParagraphs().append(paragraph);
        notesSlide.getNotesTextFrame().getParagraphs().get(1).setBulletType(TextBulletType.NUMBERED);
        notesSlide.getNotesTextFrame().getParagraphs().get(1).setBulletStyle(NumberedBulletStyle.BULLET_ARABIC_PERIOD);

        //添加第二项备注
        paragraph = new ParagraphEx();
        paragraph.setText("利用工业余热发电供热;工厂企业在进行主要的生产后会有大量的余热散出," +"企业要合理地利用余热再进行生产生活。");
        notesSlide.getNotesTextFrame().getParagraphs().append(paragraph);
        notesSlide.getNotesTextFrame().getParagraphs().get(2).setBulletType(TextBulletType.NUMBERED);
        notesSlide.getNotesTextFrame().getParagraphs().get(2).setBulletStyle(NumberedBulletStyle.BULLET_ARABIC_PERIOD);

        //添加第三项备注
        paragraph = new ParagraphEx();
        paragraph.setText("更新淘汰现有低效高能耗的供用电设备,以高效节能的电气设备来取代低效高能耗的电气设备。");
        notesSlide.getNotesTextFrame().getParagraphs().append(paragraph);
        notesSlide.getNotesTextFrame().getParagraphs().get(3).setBulletType(TextBulletType.NUMBERED);
        notesSlide.getNotesTextFrame().getParagraphs().get(3).setBulletStyle(NumberedBulletStyle.BULLET_ARABIC_PERIOD);
        
        //添加第四项备注
        paragraph = new ParagraphEx();
        paragraph.setText("企业应该加强对用电设备的维护,提高设备的检修质量。" +"因为各种机电设备和生产装置在长期的使用过程中工作效率逐渐降低,因而电能消耗增大。");
        notesSlide.getNotesTextFrame().getParagraphs().append(paragraph);
        notesSlide.getNotesTextFrame().getParagraphs().get(4).setBulletType(TextBulletType.NUMBERED);
        notesSlide.getNotesTextFrame().getParagraphs().get(4).setBulletStyle(NumberedBulletStyle.BULLET_ARABIC_PERIOD);
        
        //保存文档
        ppt.saveToFile("output/SpeakerNotes.pptx", FileFormat.PPTX_2013);
    }
}

备注信息添加效果:

效果1.jpg

【示例2】读取备注信息

import com.spire.presentation.*;
import java.io.FileWriter;
public class ReadSpeakerNotes {
    public static void main(String[] args) throws Exception {
        //加载PowerPoint文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("D:\\Desktop\\SpeakerNotes.pptx");

        //获取第四张幻灯片
        ISlide slide = ppt.getSlides().get(3);

        //获取幻灯片中的备注内容
        StringBuilder buffer = new StringBuilder();
        String notes = slide.getNotesSlide().getNotesTextFrame().getText();
        buffer.append(notes);

        //保存到文本文档
        FileWriter writer = new FileWriter("output/ReadSpeakerNotes.txt");
        writer.write(buffer.toString());
        writer.flush();
        writer.close();
    }
}

备注信息读取效果:

效果2.jpg

【示例3】删除备注信息

import com.spire.presentation.*;
public class DeleteSpeakerNote {
    public static void main(String[] args) throws Exception {
        //加载PowerPoint文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("D:\\Desktop\\SpeakerNotes.pptx");

        //获取第四张幻灯片
        ISlide slide = ppt.getSlides().get(3);

        //删除幻灯片中所有备注
        slide.getNotesSlide().getNotesTextFrame().getParagraphs().clear();

        //保存文档
        ppt.saveToFile("output/DeleteSpeakerNotes.pptx", FileFormat.PPTX_2013);
    }
}

备注信息删除效果:

效果3.jpg

(本文完)


Tina_Tang
298 声望9 粉丝