Java 生成带文本和图片的PowerPoint文档 - 简单示例

前言

这篇文章将介绍如何使用免费Java PowerPoint组件Free Spire.Presentation for Java在Java应用程序中生成PowerPoint文档,插入文本和图片,并设置文本的字体格式、对齐方式以及段后间距等。

Free Spire.Presentation for Java概述

Free Spire.Presentation for Java 是由E-iceblue公司开发的一个免费的Java PowerPoint API,涵盖PowerPoint文档创建、编辑、读取、写入、转换和保存等功能,并且不依赖Microsoft PowerPoint。

导入jar文件

1:下载最新的Free Spire.Presentation for Java,下载地址

2:新建Java应用程序,点击 File -> Project Structure -> Modules -> Dependencies,在Dependencies标签界面下,点击右边绿色的 “+”号,选择第一个选项“JARs or directories...”,选择Free Spire.Presentation for Java包lib文件夹下的3个.jar文件,点“OK”,jar文件导入成功。

3:新建Java Class,此处我取名为CreatePowerPoint.Java。

CreatePowerPoint.Java示例代码

import com.spire.presentation.*;
import com.spire.presentation.drawing.FillFormatType;

import java.awt.*;
import java.awt.geom.Rectangle2D;

public class CreatePowerPoint {
    public static void main(String[] args) throws Exception {

        //新建PowerPoint文档
        Presentation ppt = new Presentation();
        //获取第一张幻灯片(新建文档默认包含一张幻灯片)
        ISlide slide = ppt.getSlides().get(0);

        Rectangle2D rect = new Rectangle2D.Double(50, 10, 500, 180);

        //添加一个矩形形状到幻灯片
        IAutoShape shape = slide.getShapes().appendShape(ShapeType.RECTANGLE, rect);
        shape.getShapeStyle().getLineColor().setColor(Color.white);
        shape.getFill().setFillType(FillFormatType.NONE);

        //移除矩形中默认的一个段落
        shape.getTextFrame().getParagraphs().clear();

        //创建一个段落,设置段落文本、字体格式、对齐方式和段后间距
        ParagraphEx paragraph = new ParagraphEx();
        paragraph.setText("登岳阳楼\n");
        paragraph.getTextRanges().get(0).setLatinFont(new TextFont("Calibri"));
        paragraph.getTextRanges().get(0).setFontHeight(24f);
        paragraph.getTextRanges().get(0).isBold(TriState.TRUE);
        paragraph.getTextRanges().get(0).getFill().setFillType(FillFormatType.SOLID);
        paragraph.getTextRanges().get(0).getFill().getSolidColor().setColor(Color.black);
        paragraph.setAlignment(TextAlignmentType.CENTER);
        paragraph.setSpaceAfter(10f);

        //将段落添加至矩形
        shape.getTextFrame().getParagraphs().append(paragraph);

        //创建一个段落,设置段落文本和字体格式
        paragraph = new ParagraphEx();
        paragraph.setText("昔闻洞庭水,今上岳阳楼。吴楚东南坼,乾坤日夜浮。\n" +
                "亲朋无一字,老病有孤舟。戎马关山北,凭轩涕泗流。");
        paragraph.getTextRanges().get(0).setLatinFont(new TextFont("Calibri"));
        paragraph.getTextRanges().get(0).setFontHeight(20f);
        paragraph.getTextRanges().get(0).getFill().setFillType(FillFormatType.SOLID);
        paragraph.getTextRanges().get(0).getFill().getSolidColor().setColor(Color.black);

        //将段落添加至矩形
        shape.getTextFrame().getParagraphs().append(paragraph);

        //添加图片到幻灯片
        rect = new Rectangle2D.Float(50, 200, 500, 300);
        slide.getShapes().appendEmbedImage(ShapeType.RECTANGLE, "岳阳楼.jpg", rect);

        //保存文档
        ppt.saveToFile("登岳阳楼.pptx", FileFormat.PPTX_2013);
    }
}

生成PowerPoint文档:

Java 生成带文本和图片的PowerPoint文档 - 简单示例

文章只介绍了Free Spire.Presentation for Java创建PowerPoint功能,了解更多功能,请访问产品介绍页面,获取Free Spire.Presentation for Java免费技术支持:QQ 2181348176,邮箱 [email protected]。感谢阅读!