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

在PowerPoint文档中,给图形添加阴影效果能增强图形的立体感,使其贴近现实效果,提升文档的美观度。 本文将展示如何使用Free Spire.Presentation for Java为PPT中的图形添加阴影效果。除了文中展示的预设阴影效果,还可以添加内部阴影(InnerShadowEffect)、外部阴影(OuterShadowEffect)、柔化边缘阴影(SoftEdgeEffect)等。

JAR包导入

方法一:下载Free Spire.Presentation for Java包并解压缩,然后将lib文件夹下的jar包作为依赖项直接导入到Java应用程序中。

方法二:通过Maven仓库安装jar包,配置pom.xml文件的代码如下:

com.e-iceblue

http://repo.e-iceblue.cn/repository/maven-public/

e-iceblue

spire.presentation.free

3.9.0

Java代码

import com.spire.presentation.*;

import com.spire.presentation.drawing.FillFormatType;

import com.spire.presentation.drawing.PictureFillType;

import com.spire.presentation.drawing.PresetShadow;

import java.awt.geom.Rectangle2D;

import java.awt.Color;

public class ShapeShadowEffect {

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

//创建Presentation对象

Presentation ppt = new Presentation();

//获取第一页幻灯片

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

//添加一个图形

Rectangle2D rect = new Rectangle2D.Float(120, 80, 180, 150);

IAutoShape shape = slide.getShapes().appendShape(ShapeType.RECTANGLE,rect);

//将图片填充到图形

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

shape.getFill().getPictureFill().getPicture().setUrl("C:\\Users\\Administrator\\Desktop\\cow.png");

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

shape.getLine().setFillType(FillFormatType.NONE);

//设置阴影效果

PresetShadow presetShadow = new PresetShadow();

presetShadow.setPreset(PresetShadowValue.BACK_RIGHT_PERSPECTIVE);

presetShadow.getColorFormat().setColor(Color.lightGray);

//将阴影效果应用到图形

shape.getEffectDag().setPresetShadowEffect(presetShadow);

//保存文档

ppt.saveToFile("ShapeShadow.pptx", FileFormat.PPTX_2013);

}

}

代码运行结果:

38cbe3078efb7b3daa57e20f1d04109d.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409065.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nyoj 21 三个水杯 BFS

三个水杯 时间限制:1000 ms | 内存限制:65535 KB难度:4描述给出三个水杯,大小不一,并且只有最大的水杯的水是装满的,其余两个为空杯子。三个水杯之间相互倒水,并且水杯没有标识,只…

论文阅读(1)--Fine-grained Image Classification by Exploring Bipartite-Graph Labels

这是阅读《Fine-grained Image Classification by Exploring Bipartite-Graph Labels》这篇论文所做的笔记。 这篇论文是来自NEC实验室,是一篇有关细粒度分类/精细分类方面的论文。 0. 摘要 首先提出一个问题,给定一张食物的图片,对于一个…

java常用jar_常用jar包含义

常用jar包含义activation.jar:与javaMail有关的jar包,使用JavaMail时应与mail.jar一起加入到lib中去,具体负责mail的数据源和类型等ajaxtags-1.2-beta3.jar:ajax提供的标签库,使用户能像使用jsp普通标签一样使用ajaxant.jar和antlr.jar(可以删…

LS 24 Bracket sequence(DP)

Bracket sequence Given string s made up with (, ), ?, count the way to substitude ? with ( or ) to form regular bracket sequence. Input A string s. (1≤|s|≤1000) Ouptut An integer denotes the number of ways modulo (1097). Sample input ???? Sample ou…

java注释和注解_深入理解JAVA注解(Annotation)以及自定义注解

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。Java 语言中的类、方法、变量、参数和包等都可以被标注。注解可以看作是一种特殊的标记,在程序在编译或者运行时可以检测到这些标记而进行一些特殊的处理。本文对 Annotation 进行了…

[机器学习笔记]Note10--支持向量机(SVM)

继续是机器学习课程的笔记,这节课的内容是介绍支持向量机(SVM)的内容。SVM是一个非常强大且流行的算法,在一些情况下,面对一些复杂的非线性问题可以提供比逻辑回归或神经网络更加简洁更加有效的结果。 优化目标 首先…

[机器学习笔记]Note11--聚类

继续是机器学习课程的笔记,本节介绍的是聚类方法,主要是K-means算法。 非监督学习 首先介绍监督学习和非监督学习的区别。一个监督学习的例子如下图,给定训练集如:{(x(1),y(1)),(x(2),y(2)),…,(x(m),y(m))},每个训练实例都有对应的标签。 …

LLVM每日谈之十二 LLVM的源码分析之Pass相关

作者:snsn1984题记:在学习LLVM的过程中,要想学的更加深入,掌握更多的技能,LLVM的源码是必须要读的,但是在这么多的源码中,从哪里下手?很容易让人找不到头脑,本文这里就先…

[机器学习笔记]Note12--降维

继续是机器学习课程的笔记,本节介绍的是降维方法,这也是非监督学习中的一个问题,主要介绍主要成分分析(Principal Component Analysis,PCA)算法。 降维 动机一:数据压缩 使用降维的一个原因是…

jetty java 实例_Maven+Jetty+Servlet 简单示例

一个朋友让我帮他写一个基于 Servlet JettyDerby 实现的项目。本文先介绍 MavenJettyServlet 的整合例子。1、添加依赖pom.xml 里添加依赖javax.servletjavax.servlet-api3.1.0org.eclipse.jetty9.4.14.v20181114jetty-webapp2、准备两个 Servlet 例子HelloServletpackage com.…

节后的人才市场开始活跃了?

今天居然接到一个印度打来的电话,一印度MM操着纯正的印度英语居然说是从Linkedin上找到我的,希望我能参加他们杭州公司的面试,费了很大的劲也没让她弄明白我不愿意relocate。 只能说节后的人才市场就像快烧开的水,分子们开始活跃了…

mysql 静态表 是不是 myisam_mysql的静态表和动态表的区别,MyISAM和InnoDB的区别

静态表字段长度固定,自动填充,读写速度很快,便于缓存和修复,但比较占硬盘,动态表是字段长度不固定,节省硬盘,但更复杂,容易产生碎片,速度慢,出问题后不容易重…

[机器学习笔记]Note13--异常检测

继续是机器学习课程的笔记,本节课内容是异常检测,它是一个非监督学习算法,用于发现可能不应该属于一个已定义的组中的数据。 密度估计 首先是给出一个例子,如下图所示,是一个测试飞机引擎的例子,给定数据…

html5新增元素

一、HTML5新增结构元素 之前,我们只能用万能的div标签,并为其设置不同的id如header, footer, sidebar等来分别表达头部,底部或者侧栏等。而现在代码编写者不再需要为id的命名费尽心思,对于手机、阅读器等设备更有语义的好处。 HTM…