import java.awt.AlphaComposite;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Transparency;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
public class AddShadow {
/**
* @param srcFile
* 源图像文件
* @param x
* 阴影宽度
* @param y
* 阴影高度
* @param color
* 阴影颜色
* @param alpha
* 透明度,0-1之间取值
* @throws Exception
* 为指定的文件加上透明阴影
*/
public final static void add(File srcFile, int x, int y, Color color,
float alpha) throws Exception {
// 读取源文件
BufferedImage srcImg = ImageIO.read(srcFile);
// 在新建一个图像缓冲区,大小包括阴影部分
BufferedImage bufImg = new BufferedImage(srcImg.getWidth() + x,
srcImg.getHeight() + y, BufferedImage.TYPE_INT_RGB);
Graphics2D g = bufImg.createGraphics();
// 创建一个支持有透明度的图像缓冲区
bufImg = g.g
java-为指定的图像文件加透明阴影
最新推荐文章于 2021-03-05 10:42:06 发布
这段代码展示了如何使用Java为图像文件添加透明阴影。通过创建新的BufferedImage并利用Graphics2D对象,设置AlphaComposite进行透明度控制,将阴影和源图像绘制到新图像上,最后保存为PNG格式。
摘要由CSDN通过智能技术生成