通过Java后端代码操作PPT幻灯片时,可直接在幻灯片中绘制形状,并在形状中添加文本字符串内容。本篇文章,介绍一种通过html字符串来添加内容到PPT幻灯片的的方法,可添加文字、图片、视频、音频等。下面是具体方法和步骤。
一、 环境配置
- IntelliJ IDEA
- Free Spire.Presentation for Java
关于如何导入jar:
<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中执行如图操作:
二、代码示例
代码步骤解析:
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幻灯片效果:
—End—