PPT是我们在平时学习和工作中经常使用的办公软件之一。在制作PPT时,难免会遇到需要添加、合并形状的情况。因此本文就将通过使用Java程序来详细介绍如何在PPT幻灯片中添加和合并一些常见的形状,其中包含了对形状进行单色填充、渐变色填充、图片填充和图案填充的操作演示。

Jar文件获取及导入:

方法1:通过官方网站下载获取jar包。解压后将lib文件夹下的Spire.Presentation.jar文件导入Java程序。(如下图)

方法2:通过maven仓库安装导入。具体安装教程详见此网页。

【示例1】添加形状

import com.spire.presentation.*;

import com.spire.presentation.drawing.*;

import javax.imageio.ImageIO;

import java.awt.*;

import java.awt.geom.Rectangle2D;

import java.awt.image.BufferedImage;

import java.io.File;

public class AddShape {

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

//创建PowerPoint文档

Presentation presentation = new Presentation();

//添加一个三角形,并设置单色填充

IAutoShape shape = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.TRIANGLE, new Rectangle2D.Double(115, 130, 100, 100));

shape.getFill().setFillType(FillFormatType.SOLID);

shape.getFill().getSolidColor().setColor(Color.orange);

shape.getShapeStyle().getLineColor().setColor(Color.white);

//添加一个椭圆,并设置图片填充

shape = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.ELLIPSE, new Rectangle2D.Double(290, 130, 150, 100));

shape.getFill().setFillType(FillFormatType.PICTURE);

shape.getFill().getPictureFill().setFillType(PictureFillType.STRETCH);

BufferedImage image = ImageIO.read(new File("D:\\Desktop\\Image.jpg"));

shape.getFill().getPictureFill().getPicture().setEmbedImage(presentation.getImages().append(image));

shape.getShapeStyle().getLineColor().setColor(Color.white);

//添加一个心形,并设置图案填充

shape = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.HEART, new Rectangle2D.Double(515, 130, 130, 100));

shape.getFill().setFillType(FillFormatType.PATTERN);

shape.getFill().getPattern().setPatternType(PatternFillType.CROSS);

shape.getShapeStyle().getLineColor().setColor(Color.white);

//添加一个五角星,并设置渐变填充

shape = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.FIVE_POINTED_STAR, new Rectangle2D.Double(115, 300, 100, 100));

shape.getFill().setFillType(FillFormatType.GRADIENT);

shape.getFill().getGradient().getGradientStops().append(0, KnownColors.BLACK);

shape.getShapeStyle().getLineColor().setColor(Color.white);

//添加一个矩形,并设置渐变填充

shape = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle2D.Double(290, 300, 150, 100));

shape.getFill().setFillType(FillFormatType.GRADIENT);

shape.getFill().getGradient().getGradientStops().append(0, KnownColors.LIGHT_SKY_BLUE);

shape.getFill().getGradient().getGradientStops().append(1, KnownColors.ROYAL_BLUE);

shape.getShapeStyle().getLineColor().setColor(Color.white);

//添加一个向上的箭头,并设置渐变填充

shape = presentation.getSlides().get(0).getShapes().appendShape(ShapeType.BENT_UP_ARROW, new Rectangle2D.Double(515, 300, 130, 100));

shape.getFill().setFillType(FillFormatType.GRADIENT);

shape.getFill().getGradient().getGradientStops().append(1f, KnownColors.OLIVE);

shape.getFill().getGradient().getGradientStops().append(0, KnownColors.POWDER_BLUE);

shape.getShapeStyle().getLineColor().setColor(Color.white);

//保存文档

presentation.saveToFile("output/AddShapes.pptx", FileFormat.PPTX_2010);

}

}

形状添加效果:

【示例2】合并形状

import com.spire.presentation.*;

import com.spire.presentation.drawing.FillFormatType;

import java.awt.geom.Rectangle2D;

import java.util.ArrayList;

public class GroupShape {

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

//创建PPT文档

Presentation ppt = new Presentation();

//获取第一张幻灯片

ISlide slide = ppt.getSlides().get(0);

//添加一个矩形形状

IShape rectangle = slide.getShapes().appendShape(ShapeType.RECTANGLE, new Rectangle2D.Double(20,100,200,40));

rectangle.getFill().setFillType(FillFormatType.SOLID);

rectangle.getFill().getSolidColor().setKnownColor(KnownColors.GOLD);

rectangle.getLine().setWidth(0.1f);

//添加一个带状形状

IShape ribbon = slide.getShapes().appendShape(ShapeType.RIBBON_2, new Rectangle2D.Double(60, 75, 120, 80));

ribbon.getFill().setFillType(FillFormatType.SOLID);

ribbon.getFill().getSolidColor().setKnownColor(KnownColors.PURPLE);

ribbon.getLine().setWidth(0.1f);

//将两个形状添加到ArrayList数组

ArrayList list = new ArrayList();

list.add((Shape)rectangle);

list.add((Shape)ribbon);

//组合数组中的形状

ppt.getSlides().get(0).groupShapes(list);

//保存结果文档

ppt.saveToFile("output/GroupShapes.pptx", FileFormat.PPTX_2013);

}

}

形状合并效果:

(本文完)

Java多个ppt合并脚本_Java 添加、合并PPT形状相关推荐

  1. Java多个ppt合并脚本_Java 合并、拆分PPT幻灯片

    随着PPT文档在日常工作中的使用越来越频繁,为了便于操作和管理文档,时常会遇到需要将PPT幻灯片进行合并或拆分的情况.一般来说,合并包括将指定幻灯片合并到文档.将多个幻灯片文档合并为一个文档:拆分包括 ...

  2. Java多个ppt合并脚本_java中poi自动生成ppt的表格,怎样合并行列?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 // 不跨单元格显示的数据,如:分两行,上一行分别两格为一格,下一行就为两格,"数量","金额" HSSFCell ...

  3. java两个list合并 去重_java 快速合并去重List

    两个类型一样的List,合并,并且去除重复的数据 public List getPrivilegesByUserId(Long userId){ List roles=this.getRoleIdsB ...

  4. java合并整形_Java:合并InputStreams(Java: merging InputStreams)

    我的目标是创建(或使用现有)一个InputStream实现(比如MergeInputStream),它将尝试从多个InputStream中读取并返回第一个结果. 之后,它将释放锁定并停止从所有Inpu ...

  5. 如何在java中添加照片_Java如何将图片添加到PPT幻灯片中?

    在Java编程中,如何将图片添加到PPT幻灯片中? 注意:需要访问网址: , 下载一个Apache POI软件包.这里下载最新版本:poi-bin-3.17-20170915.tar.gz解压并全部导 ...

  6. java 图片阴影_Java如何为 PPT 中的图形添加阴影效果

    在PowerPoint文档中,给图片添加阴影效果能增强图片的逼真度,使其贴近现实效果,提升文档的美观度. 本文将展示如何使用Free Spire.Presentation for Java为PPT中的 ...

  7. java 图片阴影_Java 为 PPT 中的图形添加阴影效果

    在PowerPoint文档中,给图形添加阴影效果能增强图形的立体感,使其贴近现实效果,提升文档的美观度. 本文将展示如何使用Free Spire.Presentation for Java为PPT中的 ...

  8. java读取ppt内容_Java添加、读取和删除 PPT 中的备注

    PowerPoint 幻灯片中的备注信息是为使用者提供便利而设置的,该信息只对使用者可见.本文将向大家详细阐述如何通过Spire.Presentation for Java添加.读取和删除 Power ...

  9. java添加声音文件_Java 添加视频、音频到PPT幻灯片

    import com.spire.presentation.*; import java.awt.*; public class AddVideoAudio { public static void ...

最新文章

  1. pyinstaller 打包tensorflow2.0为单个文件
  2. react源码总览(翻译)
  3. 【Scratch】青少年蓝桥杯_每日一题_5.07_猜数字
  4. linux添加windows网络打印机,Linux Mint如何添加windows分享的网络打印机?
  5. python不同目录调用_python3 不同目录间模块调用
  6. 实操来了!一文告诉你如何用 Streamlit 和 Heroku 开发 Web
  7. 大数据在各个行业的应用_大数据的应用领域有哪些
  8. 本周ASP.NET英文技术文章推荐[07/22 - 07/28]:VS 2008、.NET 3.5、IronRuby、jQuery、ASP.NET AJAX、IIS7...
  9. windowsC盘msp文件清理
  10. 从零学Java目录导航
  11. 普通固定电话机使用与原理简介
  12. Python基础之键盘操作
  13. python中match的六种用法_python re.match()用法相关示例
  14. 四川大学计算机组成原理实验报告_计算机组成原理基础解释
  15. android拼图小游戏代码,Android实现拼图小游戏
  16. 关于PMI-PBA商业分析师,你想知道的都在这
  17. 尚德机构COO杜铮:在线教育进入下半场 释放供给侧红利成关键
  18. hdu 6609
  19. Kali学习笔记32:Maltego、Exiftool
  20. 测绘资质-地理信息系统工程

热门文章

  1. 【Redis-6.0.8】Redis内存模型
  2. 如何通过Photoshop根据纹理贴图轻松获得法线贴图
  3. 开源ICC2013结题
  4. 一个数组,负数放左边,正数放右边
  5. 甘肃2本计算机大学,甘肃有哪些二本大学
  6. Python分析《青你2》67万条弹幕,看看有没有你Pick的小姐姐
  7. java计算机毕业设计社区食堂供餐源码+系统+数据库+lw文档+mybatis+运行部署
  8. strlen 头文件 linux,seizeof()和strlen()的区别
  9. nvidia dch 驱动 与windows 不兼容_NVIDIA不再提供DCH驱动下载 Win10装不了驱动看这里...
  10. Webpack插件是如何编写的——prerender-spa-plugin源码解析