欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java 添加、修改、读取、删除PPT备注

程序员文章站 2022-05-26 19:55:45
...

概述

幻灯片中的备注信息是只提供给幻灯片演讲者观看的特定内容,在演讲者放映幻灯片时,备注信息可给演讲者提供讲解思路,起到辅助讲解的作用。本文将通过Java程序来演示如何操作PPT幻灯片中的备注信息,要点包括:

  • 添加备注信息
  • 修改备注信息
  • 读取备注信息
  • 删除备注信息

使用工具

  • Free Spire.Presentation for Java (免费版)

Jar文件获取及导入:

方法1:通过官网下载JAR文件包。下载后,解压文件,并将lib文件夹下的Spire.Presentation.jar文件导入到java程序。参考如下导入效果:

Java 添加、修改、读取、删除PPT备注

方法2:可通过maven仓库安装导入到maven项目,可参考导入方法


Java 代码示例

【示例1】添加备注信息

import com.spire.presentation.*;

public class AddSpeakNotes {
    public static void main(String[] args) throws Exception{
        //加载PowerPoint文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("sample.pptx");

        //获取第一张幻灯片
        ISlide slide = ppt.getSlides().get(2);
        //添加备注幻灯片到第一张幻灯片
        NotesSlide notesSlide = slide.addNotesSlide();

        //添加备注标题
        ParagraphEx paragraph = new ParagraphEx();
        String string = "备注:";
        paragraph.setText(string);
        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);

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

备注添加效果:

Java 添加、修改、读取、删除PPT备注

【示例2】修改备注信息

import com.spire.presentation.*;

public class ModifySpeakerNotes {
    public static void main(String[] args) throws Exception{
        //加载测试文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("AddSpeakerNotes.pptx
");

        //获取指定幻灯片
        ISlide slide = ppt.getSlides().get(2);

        //修改指定备注信息
        slide.getNotesSlide().getNotesTextFrame().getParagraphs().get(1).setText("新修改的备注信息");
        slide.getNotesSlide().getNotesTextFrame().getParagraphs().get(2).setAlignment(TextAlignmentType.CENTER);
        slide.getNotesSlide().getNotesTextFrame().getParagraphs().get(2).setBulletStyle(NumberedBulletStyle.BULLET_ROMAN_UC_PAREN_RIGHT);

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

备注修改效果:

Java 添加、修改、读取、删除PPT备注

【示例3】读取备注信息

import com.spire.presentation.*;

import java.io.FileWriter;

public class ExtractSpeakerNotes {
    public static void main(String[] args) throws Exception{
        //加载测试文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("AddSpeakerNotes.pptx");

        //获取指定幻灯片
        ISlide slide = ppt.getSlides().get(2);

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

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

备注信息读取结果:

Java 添加、修改、读取、删除PPT备注

【示例4】删除备注信息

import com.spire.presentation.*;

public class DeleteSpeakerNotes {
    public static void main(String[] args)  throws Exception{
        //加载测试文档
        Presentation ppt = new Presentation();
        ppt.loadFromFile("test.pptx");

        //获取指定幻灯片
        ISlide slide = ppt.getSlides().get(2);

        //删除备注信息
        slide.getNotesSlide().getNotesTextFrame().getParagraphs().get(0).getTextRanges().clear();//删除指定段落中的备注信息
        //slide.getNotesSlide().getNotesTextFrame().getParagraphs().clear();//删除所有备注信息

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

备注信息删除效果:

Java 添加、修改、读取、删除PPT备注

(本文完)

转载请注明出处!