java xslfslide_Apache POI PPT - 幻灯片布局
在上一章中,您已经了解了如何创建空白幻灯片以及如何向其添加幻灯片。 在本章中,您将学习如何获取可用幻灯片的列表,以及如何创建具有不同布局的幻灯片。
可用的幻灯片布局
PowerPoint演示文稿具有幻灯片布局,您可以选择所需的布局来编辑幻灯片。 首先,让我们找出所有可用的幻灯片布局的列表。有不同的幻灯片母版,在每个幻灯片母版中,有几个幻灯片布局。
您可以使用XMLSlideShow类的getSlideMasters()方法获取幻灯片主题列表。
您可以使用XSLFSlideMaster类的getSlideLayouts()方法从每个幻灯片母带获取幻灯片布局的列表。
您可以使用XSLFSlideLayout类的getType()方法从布局对象获取幻灯片布局的名称。
注意:所有这些类都属于org.poi.xslf.usermodel包。
下面给出的是获取PPT中可用幻灯片布局列表的完整程序:import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
public class SlideLayouts {
public static void main(String args[]) throws IOException{
//create an empty presentation
XMLSlideShow ppt = new XMLSlideShow();
System.out.println("Available slide layouts:")
//getting the list of all slide masters
for(XSLFSlideMaster master : ppt.getSlideMasters()){
//getting the list of the layouts in each slide master
for(XSLFSlideLayout layout : master.getSlideLayouts()){
//getting the list of available slides
System.out.println(layout.getType());
}
}
}
}
将上述Java代码保存为SlideLayouts.java,然后从命令提示符处编译并执行,如下所示:$javac SlideLayouts.java
$java SlideLayouts
它将编译并执行以生成以下输出:Available slide layouts:
TITLE
PIC_TX
VERT_TX
TWO_TX_TWO_OBJ
BLANK
VERT_TITLE_AND_TX
TITLE_AND_CONTENT
TITLE_ONLY
SECTION_HEADER
TWO_OBJ
OBJ_TX
下面显示的是MS-Office 360,2013版本提供的一些示例幻灯片布局。
标题布局
让我们使用标题布局在PPT中创建幻灯片。 请按照以下步骤操作:
步骤1:通过实例化XMLSlideShow类创建一个空的演示文稿,如下所示:XMLSlideShow ppt = new XMLSlideShow();
步骤2:使用getSlideMasters()方法获取幻灯片主题列表。 此后,使用索引选择所需的幻灯片母带,如下所示:XSLFSlideMaster slideMaster = ppt.getSlideMasters()[0];
这里我们得到的默认幻灯片母版是在幻灯片主数据的第0位置。
步骤3:使用XSLFSlideMaster类的getLayout()方法获取所需的布局。 此方法接受一个参数,您必须传递SlideLayoutclass的静态变量之一,代表我们所需的布局。 这个类中有几个变量,每个变量代表一个幻灯片布局。
下面的代码片段显示了如何创建标题布局:XSLFSlideLayout titleLayout = slideMaster.getLayout(SlideLayout.TITLE);
步骤4:通过将幻灯片布局对象作为参数传递来创建新幻灯片。XSLFSlide slide = ppt.createSlide(titleLayout);
第5步:使用XSLFSlide类的getPlaceholder()方法选择占位符。 此方法接受整数参数。 通过传递0到它,你会得到XSLFTextShape对象,使用它可以访问幻灯片的标题文本区域。 使用setText()方法设置标题,如下所示:XSLFTextShape title1 = slide.getPlaceholder(0);
//setting the title init
title1.setText("Tutorials point");
下面给出的是在演示文稿中创建带有标题布局的幻灯片的完整程序:import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.SlideLayout;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
import org.apache.poi.xslf.usermodel.XSLFTextShape;
public class TitleLayout {
public static void main(String args[]) throws IOException{
//creating presentation
XMLSlideShow ppt = new XMLSlideShow();
//getting the slide master object
XSLFSlideMaster slideMaster = ppt.getSlideMasters()[0];
//get the desired slide layout
XSLFSlideLayout titleLayout = slideMaster.getLayout(SlideLayout.TITLE);
//creating a slide with title layout
XSLFSlide slide1 = ppt.createSlide(titleLayout);
//selecting the place holder in it
XSLFTextShape title1 = slide1.getPlaceholder(0);
//setting the title init
title1.setText("Tutorials point");
//create a file object
File file=new File("C://POIPPT//Examples//Titlelayout.pptx");
FileOutputStream out = new FileOutputStream(file);
//save the changes in a PPt document
ppt.write(out);
System.out.println("slide cretated successfully");
out.close();
}
}
将上面的Java代码保存为TitleLayout.java,然后从命令提示符处编译并执行它,如下所示:$javac TitleLayout.java
$java TitleLayout
它将编译并执行以生成以下输出。slide created successfully
带有新添加的标题布局幻灯片的PPT文档如下所示:
标题和内容布局
让我们使用标题和内容布局在PPT中创建幻灯片。 按照下面给出的步骤。
步骤1:通过实例化XMLSlideShow类创建一个空的演示文稿,如下所示:XMLSlideShow ppt = new XMLSlideShow();
步骤2:使用getSlideMasters()方法获取幻灯片主题列表。 使用索引选择所需的幻灯片母带,如下所示:XSLFSlideMaster slideMaster = ppt.getSlideMasters()[0];
这里我们得到的默认幻灯片母版是在幻灯片主数据的第0位置。
步骤3:使用XSLFSlideMaster类的getLayout()方法获取所需的布局。 此方法接受一个参数,您必须传递代表我们所需布局的SlideLayout类的静态变量之一。 这个类中有几个变量代表幻灯片布局。
以下代码段显示如何创建标题和内容布局:XSLFSlideLayout contentlayout = slideMaster.getLayout(SlideLayout.TITLE_AND_CONTENT);
步骤4:通过将幻灯片布局对象作为参数传递来创建新幻灯片。XSLFSlide slide = ppt.createSlide(SlideLayout.TITLE_AND_CONTENT);
第5步:使用XSLFSlide类的getPlaceholder()方法选择占位符。 此方法接受整数参数。 通过传递1给它,你会得到XSLFTextShape对象,使用它可以访问幻灯片的内容区域。 使用setText()方法设置标题,如下所示:XSLFTextShape title1 = slide1.getPlaceholder(1);
//setting the title init
title1.setText("Introduction");
步骤6:使用XSLFTextShape类别的clearText()方法清除投影片中现有的文字。body.clearText();
步骤7:使用addNewTextParagraph()方法添加新段落。 现在使用addNewTextRun()方法向段落中添加一个新的文本运行。 现在到文本运行,使用setText()方法添加文本,如下所示:body.addNewTextParagraph().addNewTextRun().setText("this is my first slide body");
下面给出的是在演示文稿中创建带有标题布局的幻灯片的完整程序:import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.SlideLayout;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;
import org.apache.poi.xslf.usermodel.XSLFSlideLayout;
import org.apache.poi.xslf.usermodel.XSLFSlideMaster;
import org.apache.poi.xslf.usermodel.XSLFTextShape;
public class TitleAndBodyLayout {
public static void main(String args[]) throws IOException{
//creating presentation
XMLSlideShow ppt = new XMLSlideShow();
//getting the slide master object
XSLFSlideMaster slideMaster = ppt.getSlideMasters()[0];
//select a layout from specified list
XSLFSlideLayout slidelayout = slideMaster.getLayout(SlideLayout.TITLE_AND_CONTENT);
//creating a slide with title and content layout
XSLFSlide slide = ppt.createSlide(slidelayout);
//selection of title place holder
XSLFTextShape title = slide.getPlaceholder(0);
//setting the title in it
title.setText("introduction");
//selection of body placeholder
XSLFTextShape body = slide.getPlaceholder(1);
//clear the existing text in the slide
body.clearText();
//adding new paragraph
body.addNewTextParagraph().addNewTextRun().setText("this is my first slide body");
//create a file object
File file=new File("contentlayout.pptx");
FileOutputStream out = new FileOutputStream(file);
//save the changes in a file
ppt.write(out);
System.out.println("slide cretated successfully");
out.close();
}
}
将上述Java代码保存为TitleLayout.java,然后从命令提示符处编译并执行它,如下所示:$javac TitleLayout.java
$java TitleLayout
它将编译并执行以生成以下输出:slide created successfully
带有新添加的标题布局幻灯片的PPT文档如下所示:
以同样的方式,您也可以创建具有不同布局的幻灯片。
java xslfslide_Apache POI PPT - 幻灯片布局相关推荐
- 库ppt演示 python_python操作Power Point:PPT幻灯片布局基础
前面对python操作PPT 做了一个概述, 并展开了如何打开处理一个PPT的具体操作,本节会为自动处理每一个PPT页打下基础,介绍单页PPT(幻灯片)的基础知识. 使用幻灯片 单页PPT(幻灯片)的 ...
- python ppt_python操作Power Point:PPT幻灯片布局基础
前面对python操作PPT 做了一个概述, 并展开了如何打开处理一个PPT的具体操作,本节会为自动处理每一个PPT页打下基础,介绍单页PPT(幻灯片)的基础知识.使用幻灯片 单页PPT(幻灯片)的基 ...
- Java 打印PPT幻灯片
本篇文章将介绍通过Java程序打印PPT幻灯片的方法.包括打印幻灯片的所有页.打印幻灯片中的指定页面. 使用工具:Free Spire.Presentation for Java (免费版) Jar文 ...
- java 幻灯片_Java 打印PPT幻灯片
本篇文章将介绍通过Java程序打印PPT幻灯片的方法.包括打印幻灯片的所有页.打印幻灯片中的指定页面. 使用工具:Free Spire.Presentation for Java (免费版) Jar文 ...
- java poi3.15 ppt,Apache POI PPT - 演示( Presentation)
Apache POI PPT - 演示( Presentation) 通常,我们使用MS-PowerPoint来创建演示文稿. 现在让我们看看如何使用Java创建演示文稿. 完成本章后,您将能够使用J ...
- java 使用poi将PPT转为图片,在线预览PPT
在线预览PPT,我的思路为java 使用poi将PPT转为图片,图片存储到指定的文件夹下面,然后返回生成的图片名称集合,将图片路径遍历到前台的html标签上,用HTML前台模仿画一个PPT框架,操作图 ...
- java通过poi操作ppt
Java POI导出ppt简单实现 Java使用poi组件导出ppt报表幻灯片,poi导出pptx表格可以合并单元格,输出老版本的ppt不支持合并单元格, 下面介绍poi导出pptx的一些常用功能, ...
- java使用poi逐页读取ppxt,JAVA-WEB(通过POI)实现PPT在线预览
思路: 获取网络PPT 文件 将PPT每一页的幻灯片都转换成单张图片 用流输出到页面展示 1, 首先获取PPT格式 PPT格式无非两种 PPTX,PPT 2,获取PPT幻灯片页数传递到JSP中 3,J ...
- Java多个ppt合并脚本_Apache POI PPT - 合并( Merging)
Apache POI PPT - 合并( Merging) 您可以使用XMLSlideShow类的importContent()方法合并多个演示文稿. 以下是合并两个演示文稿的完整程序 -import ...
- Java基于POI对PPT的基本操作
Java基于POI对PPT的基本操作 在Java中对PPT文件进行操作的话,我使用的是Apache的开源项目POI.该项目的功能主要是使用Java开发或生成微软办公文件,比如:Word.Excel.P ...
最新文章
- PHP使用BC Math 函数处理浮点运算问题
- Init进程和进程 ④
- R语言可视化绘制及PDF使用字体参数列表:查看字体列表、可视化绘制图像中的字体参数列表、字体示例并写入pdf
- PYPL 12 月 IDE 榜单:Eclipse 有望超越 Visual Studio
- VTK:可视化之FastSplatter
- php 修改 wordpress,wordpress怎么编辑代码修改页面
- csdn的blog后台程序的导航菜单的实现
- 网站性能Web压力测试工具webbench
- C 语言中获取文件长度(ftell函数)
- Windows10开启电脑卓越性能模式,运行速度提升10%,CUP利用率达到50%
- ThinkPad Win7更改鼠标滚轮设置问题
- MATLAB 曲线拟合
- OS实验-模拟实现首次/最佳/最坏适应算法的内存块分配和回收
- 服务器和售票系统,网上售票系统的开发与实现.doc
- 7-78 求e的近似值 (15 分)
- 第一篇:爬虫基本原理
- vue-router的实现
- python百科全书_维基百科中的数据科学:手把手教你用Python读懂全球最大百科全书...
- 深圳大数据培训技术分享:Hadoop集群同步
- somachine V4.1如何注册
热门文章
- Doom3 couldn't load default.cfg
- uniapp 跳转到外部链接
- java 雪崩效应,七、微服务架构中的“雪崩效应”
- LeetCode 香槟塔
- Fandis COSTECH A17M23SWB MT0再见,故宫
- 7段数码管动态扫描c语言,7段数码管动态扫描原理及其实现方式
- 蓝桥杯 第39级台阶
- 在线图片文字识别html,识别文字在线_识别图片文字的在线方法是什么?
- 修改win10搜索框(Cortana)调用默认浏览器(edge)和搜索引擎
- 德州农工大学计算机专业研究生,德州农工大学计算机工程(无论文)理学硕士研究生申请要求及申请材料要求清单...