PNG图片透明背景变黑

简介: Java中PNG图片透明背景变黑
packagecom.example.demo;
importjava.awt.Graphics2D;
importjava.awt.Image;
importjava.awt.Transparency;
importjava.awt.image.BufferedImage;
importjava.io.File;
importjavax.imageio.ImageIO;
publicclassDemo {
publicstaticvoidmain(String[] args) throwsException {
StringsrcImg="D:\\1.png";//输入图片文件StringdesImg2="D:\\2.png";//输出图片文件--背景由透明变成黑色StringdesImg3="D:\\3.png";//输出图片文件--背景透明不变transparent(srcImg, desImg2, false);
transparent(srcImg, desImg3, true);
    }
privatestaticvoidtransparent(StringsrcImg, StringdesImg, booleantransparent) throwsException {
Imageimg=ImageIO.read(newFile(srcImg));
BufferedImagebufImg=newBufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_RGB);
Graphics2Dg=bufImg.createGraphics();
//是否透明if(transparent) {  
bufImg=g.getDeviceConfiguration().createCompatibleImage(img.getWidth(null), img.getHeight(null), Transparency.TRANSLUCENT);
g=bufImg.createGraphics();
  }
g.drawImage(img, 0, 0, null);
ImageIO.write(bufImg, "png", newFile(desImg));
    }
}

输出:

5.png

相关文章
|
消息中间件 存储 架构师
架构师一口气说透分布式数据一致性问题
架构师一口气说透分布式数据一致性问题
uniapp点击图片预览功能?
uniapp点击图片预览功能?
1659 0
|
JavaScript 前端开发 数据处理
vue2、vue3中使用$forceUpdate()
vue2、vue3中使用$forceUpdate()
3308 0
|
网络协议 API 数据库
InfluxDB集群
InfluxDB集群
1255 0
|
存储 供应链 数据可视化
RFID为托盘量身打造唯一身份识别标识
托盘是仓储物流的核心载体,RFID技术为其赋予唯一“电子身份证”,实现身份唯一化、数据实时化、管理高效化。通过非接触批量读取、抗干扰强等优势,提升出入库效率、资产盘点速度与供应链追溯能力,推动物流智能化升级。(238字)
|
机器学习/深度学习 传感器 自动驾驶
基于深度学习的图像识别技术在自动驾驶汽车中的应用####
【10月更文挑战第21天】 本文探讨了深度学习中的卷积神经网络(CNN)如何革新自动驾驶车辆的视觉感知能力,特别是在复杂多变的道路环境中实现高效准确的物体检测与分类。通过分析CNN架构设计、数据增强策略及实时处理优化等关键技术点,揭示了该技术在提升自动驾驶系统环境理解能力方面的潜力与挑战。 ####
753 0
|
缓存 JavaScript UED
Vue3中v-model在处理自定义组件双向数据绑定时有哪些注意事项?
在使用`v-model`处理自定义组件双向数据绑定时,要仔细考虑各种因素,确保数据的准确传递和更新,同时提供良好的用户体验和代码可维护性。通过合理的设计和注意事项的遵循,能够更好地发挥`v-model`的优势,实现高效的双向数据绑定效果。
815 161
|
JavaScript
Vue路由传参实战指南:三种常用方法示例演示
Vue路由传参实战指南:三种常用方法示例演示
1160 0
|
SQL 弹性计算 负载均衡
10分钟将您的Web应用接入防火墙
如果您现在拥有一个Web应用,并且有安全诉求,请阅读本文。
10分钟将您的Web应用接入防火墙

热门文章

最新文章