Java 插入html字符串到PPT幻灯片

时间:2020-12-09 06:21:03

通过Java后端代码操作PPT幻灯片时,可直接在幻灯片中绘制形状,并在形状中添加文本字符串内容。本篇文章,介绍一种通过html字符串来添加内容到PPT幻灯片的的方法,可添加文字、图片、视频、音频等。下面是具体方法和步骤。

一、 环境配置

  • IntelliJ IDEA
  • Free Spire.Presentation for Java

关于如何导入jar:

1.Maven仓库下载导入。参考如下配置内容:

<repositories>

        <repository>

            <id>com.e-iceblue</id>

            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>

        </repository>

    </repositories>

<dependencies>

    <dependency>

        <groupId> e-iceblue </groupId>

        <artifactId>spire.presentation</artifactId>

        <version>3.9.0</version>

    </dependency>

</dependencies>

2.手动从本地导入。下载Jar包到本地,解压文件,找到lib文件夹下的jar文件。然后在IDEA中执行如图操作:

Java 插入html字符串到PPT幻灯片

Java 插入html字符串到PPT幻灯片

Java 插入html字符串到PPT幻灯片

二、代码示例

代码步骤解析:

l  实例化Presentation类的对象。

l  通过Presentation.getSlides().get(int)方法获取指定幻灯片。

l  通过ISlide.getShapes().appendShape()添加形状到幻灯片。

l  通过html字符串定义需要在形状中添加的内容。

l  通过IAutoShape.getTextFrame().getParagraphs().addFromHtml()方法将html字符串添加到幻灯片。

l  最后通过Presentation.saveToFile()方法保存文档。

Java

import com.spire.presentation.*;
import com.spire.presentation.drawing.FillFormatType; import java.awt.*; public class AddHtmlCode {
public static void main(String[] args)throws Exception {
//实例化一个Presentation类的对象
Presentation ppt = new Presentation(); //获取第一张幻灯片
ISlide slide = ppt.getSlides().get(0); //添加一个shape幻灯片
IAutoShape shape = slide.getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle(80, 50, 520, 180));
shape.getTextFrame().getParagraphs().clear();
shape.getFill().setFillType(FillFormatType.SOLID);
shape.getFill().getSolidColor().setColor(Color.white);
shape.getShapeStyle().getLineColor().setColor(Color.gray); //插入HTML到段落
String code = "<html>"
+ "<body>"
+ "<h1 style=\" color:darkGray \"> Hyper Text Markup Language (HTML) </h1>"
+ "<p style=\" color:darkGray ;font-size:20px \">即超文本标记语言。HTML是由Web的发明者 Tim Berners-Lee和同事 Daniel W. Connolly于1990年创立的一种标记语言,它是标准通用化标记语言SGML的应用。用HTML编写的超文本文档称为HTML文档,它能独立于各种操作系统平台(如UNIX, Windows等)。</p>"
+ "</body>"
+ "</html>";
shape.getTextFrame().getParagraphs().addFromHtml(code); //保存文档
String outputFile = "Result.pptx";
ppt.saveToFile(outputFile, FileFormat.PPTX_2013);
}
}

PPT幻灯片效果:

Java 插入html字符串到PPT幻灯片

—End—