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

相关文章
|
消息中间件 存储 架构师
架构师一口气说透分布式数据一致性问题
架构师一口气说透分布式数据一致性问题
|
前端开发 JavaScript 数据安全/隐私保护
VUE3(四十)使用canvas给图片添加水印~
VUE3(四十)使用canvas给图片添加水印~
886 0
|
JSON 前端开发 Java
JSON注解和异常处理的使用
JSON注解和异常处理的使用
545 0
|
Java API 计算机视觉
阿里云新版人脸识别Java使用示例教程
之前阿里云人脸识别只提供人脸检测,人脸属性及人脸对比三个API接口,关于这方面的介绍及使用细节,可以参考阿里云人脸识别使用流程简介,之前使用的服务地址为:dtplus-cn-shanghai.data.aliyuncs.com。目前新版本加入了1:N人脸查找的功能,新版本还处于公测阶段,服务地址:face.cn-shanghai.aliyuncs.com。下面主要介绍如何使用新版本的地址调用之前的三个API的功能。
3021 0
|
网络协议 API 数据库
InfluxDB集群
InfluxDB集群
1205 0
|
机器学习/深度学习 传感器 自动驾驶
基于深度学习的图像识别技术在自动驾驶汽车中的应用####
【10月更文挑战第21天】 本文探讨了深度学习中的卷积神经网络(CNN)如何革新自动驾驶车辆的视觉感知能力,特别是在复杂多变的道路环境中实现高效准确的物体检测与分类。通过分析CNN架构设计、数据增强策略及实时处理优化等关键技术点,揭示了该技术在提升自动驾驶系统环境理解能力方面的潜力与挑战。 ####
670 0
|
缓存 JavaScript UED
Vue3中v-model在处理自定义组件双向数据绑定时有哪些注意事项?
在使用`v-model`处理自定义组件双向数据绑定时,要仔细考虑各种因素,确保数据的准确传递和更新,同时提供良好的用户体验和代码可维护性。通过合理的设计和注意事项的遵循,能够更好地发挥`v-model`的优势,实现高效的双向数据绑定效果。
752 161
|
Ubuntu 测试技术 网络安全
Ubuntu系统下部署flatpress轻量级博客系统
【10月更文挑战第3天】Ubuntu系统下部署flatpress轻量级博客系统
471 3
Ubuntu系统下部署flatpress轻量级博客系统
|
算法 Java Linux
java制作海报四:java BufferedImage 转 InputStream 上传至OSS。png 图片合成到模板(另一个图片)上时,透明部分变成了黑色
这篇文章主要介绍了如何将Java中的BufferedImage对象转换为InputStream以上传至OSS,并解决了png图片合成时透明部分变黑的问题。
1148 1

热门文章

最新文章