POI之PPT文本框生成及样式设置实例

开心一笑

一大哥去医院看病。
医生问:你得了什么病?
大哥说: 我得了间接性失忆症。
医生问:具体什么症状?
大哥说:我一看到漂亮的姑娘就忘记自己已结婚了。
医生说:滚滚滚,这病我自己都没治好!

提出问题

POI如何生成PPT的文本框及各个样式????

解决问题

直接来例子,比较简单,但慢慢来,一步一步的......

package com.hwy.test;   
import org.apache.poi.hslf.HSLFSlideShow;
import org.apache.poi.hslf.model.Slide;
import org.apache.poi.hslf.model.TextBox;
import org.apache.poi.hslf.usermodel.SlideShow;
import org.apache.poi.xslf.XSLFSlideShow;
import org.apache.poi.xslf.usermodel.*;

import java.awt.*;
import java.io.FileInputStream;
import java.io.FileOutputStream;

/**
 * PPT简单导出
 * Created by Ay on 2016/6/14.
 */
public class MyFirstPPTTest {


    public static void main(String[] args) throws Exception{
        String filePath = "D://MyPPT.pptx";
        /** 加载PPT **/
        XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(filePath));
        /** 创建一个slide,理解为PPT里的每一页 **/
        XSLFSlide xslfSlide = ppt.createSlide();
        /** 创建一个文本框 **/
        XSLFTextBox xslfTextBox = xslfSlide.createTextBox();
        XSLFTextBox xslfTextBox2 = xslfSlide.createTextBox();
        XSLFTextBox xslfTextBox3 = xslfSlide.createTextBox();
        /** 生成一个新的文本段落 **/
        XSLFTextParagraph paragraph = xslfTextBox.addNewTextParagraph();
        XSLFTextParagraph paragraph2 = xslfTextBox.addNewTextParagraph();
        XSLFTextParagraph paragraph3 = xslfTextBox.addNewTextParagraph();

        /** 添加新的文本 **/
        XSLFTextRun xslfTextRun = paragraph.addNewTextRun();
        XSLFTextRun xslfTextRun2 = paragraph2.addNewTextRun();
        XSLFTextRun xslfTextRun3 = paragraph3.addNewTextRun();
        /** 设置内容 **/
        xslfTextRun.setText("标题一");
        xslfTextRun2.setText("标题二");
        xslfTextRun3.setText("标题三");
        /** 设置加粗 **/
        xslfTextRun.setBold(true);
        xslfTextRun2.setBold(true);
        xslfTextRun3.setBold(true);
        /** 设置颜色 **/
        xslfTextRun.setFontColor(new Color(32, 33, 101));
        xslfTextRun2.setFontColor(new Color(32, 33, 101));
        xslfTextRun3.setFontColor(new Color(32, 33, 101));
        /** 设置字体大小 **/
        xslfTextRun.setFontSize(24);
        xslfTextRun2.setFontSize(24);
        xslfTextRun3.setFontSize(24);
        /** 设置字体 **/
        xslfTextRun.setFontFamily("仿宋_GB2312");
        xslfTextRun2.setFontFamily("仿宋_GB2312");
        xslfTextRun3.setFontFamily("仿宋_GB2312");
        /** 设置斜体 和 下划线 **/
        //xslfTextRun.setItalic(true);
        xslfTextRun.setUnderline(true);
        xslfTextRun2.setUnderline(true);
        xslfTextRun3.setUnderline(true);

        /** 4个参数分别为 x , y , width , height **/
        xslfTextBox.setAnchor(new Rectangle(20, 30, 100, 100));
        xslfTextBox2.setAnchor(new Rectangle(20, 60, 100, 100));
        xslfTextBox3.setAnchor(new Rectangle(20, 90, 100, 100));
        /** 输出文件 **/
        ppt.write(new FileOutputStream(filePath));
    }

}
插画

读书感悟

日本电影《只是爱着你》

  • 她习惯于说谎,可是这样的谎言却再也听不到了。
  • 我只是想让我喜欢的人所喜欢的人喜欢我而已。
  • 任何时候,离别都比预期来得早,便如此,大家还是笑着说:“再见,总有一天会再见;再见,我们会在别处相见!”所以我虽然离你很远很远,但还是想说:再见,总有一天我们会在别处相见!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这一年,一半是回忆,一半是继续。 回忆篇 2017年某月 总说毕业遥遥无期,转眼却要各奔东西 毕...
    Albos阅读 572评论 2 2
  • 2016年开始,互联网知识付费元年开启了,分答、值乎一度成为了大家眼中的香饽饽,微博内也出现了付费问答、一些小众领...
    草莓布丁猫阅读 355评论 0 0
  • 天地广阔,无一人,我独自站在一片草地上,茫然的看着周遭的一切。无垠的四周都是灰蒙蒙的,就连脚下的草也是枯黄的。 一...
    风菇凉阅读 387评论 2 3
  • 荷叶露水池塘的蛙交谈了几个世纪 美好衣裳留下来陪着太阳盛开 农夫扛着锄头田里写满汗水浸湿了几代人的衣服
    浪平阅读 161评论 0 0
  • 提起时间管理,你能想到什么呢?各种工具?还是自己无能为力的叹息? 你是不是觉得自己越来越忙,时间越来越少? 你是不...
    筱禾酱阅读 392评论 0 4