32位java怎么改_java修改24位深度png图片为32位深度
前言
在做图片切割时,发现切除来的图片空白部分变成了黑色背景,发现属性是24位深度
解决方案
1.先上代码
BufferedImage image = readImage(url);
BufferedImage bufferedImage = new BufferedImage(width, height, image.getType());
Graphics2D gr = bufferedImage.createGraphics();
//创建、透明背景
bufferedImage = gr.getDeviceConfiguration().createCompatibleImage(width, height, Transparency.TRANSLUCENT);
gr = bufferedImage.createGraphics();
//重绘
gr.drawImage(image.getScaledInstance(width, height, Image.SCALE_DEFAULT), 0, 0, width, height, null);
gr.dispose();
File file = new File(outFile);
ImageIO.write(bufferedImage, "png", file);
2.主要代码(这一步主要是将创建的空白图片重置为透明png图片)
bufferedImage = gr.getDeviceConfiguration().createCompatibleImage(width, height, Transparency.TRANSLUCENT);
gr = bufferedImage.createGraphics();
3.其他说明(这一步作保真处理)
image.getScaledInstance(width, height, Image.SCALE_DEFAULT)
4.其他代码
/**
* 图片、读取
*
* @param url
* @return
* @throws Exception
*/
private static BufferedImage readImage(String url) throws Exception {
File file = new File(url);
FileInputStream fis = new FileInputStream(file);
BufferedImage image = ImageIO.read(fis);
return image;
}
32位java怎么改_java修改24位深度png图片为32位深度相关推荐
- java类索引_java中索引的分类,图片详解
java的学习是一个漫长而又循环往复不断上升的过程,今天我们再来看一下java索引的分类,并且通过详细的图片解析. 首先,java中的索引主要分为聚簇索引和非聚簇索引. 其中InnoDB主键使用的是聚 ...
- java thumbnails 内存_Java修改图片尺寸,总是报内存溢出怎么解决?
项目需求:有很多尺寸很大的图片(图片大小可能几十MB,甚至上百MB),需要等比例缩小它们的尺寸,相当于生成缩略图. 例如:原图8268x6201,需要压缩成400x300. 我现在的方法:将图片整个读 ...
- ldap java 对象 存储_java - 修改UID在LDAP存储库 - SO中文参考 - www.soinside.com
我使用LdapTemplate对LDAP库开发应用程序的春天启动了获取用户信息. 我使用的用户电子邮件作为UID,当用户更新他的电子邮件,我必须得更新自己的UID.问题是,下面的工作方法,对所有的人域 ...
- java 解析二进制_java实现解析二进制文件(字符串、图片)
1.需求说明,实现细节要求: 解析二进制文件 files\case10\binary,其中包含一个字符串和一张图片,数据文件格式为字符串数据长度(2字节)+字符串内容+图片数据长度(4字节)+图片数据 ...
- java pdf 水印_Java 在PDF中添加水印——文本/图片水印
水印是一种十分常用的防伪手段,常用于各种文档.资料等.常见的水印,包括文字类型的水印.图片或logo类型的水印.以下java示例,将分别使用inserttextwatermark(pdfpagebas ...
- java word 水印_Java 添加Word文本水印、图片水印
水印是一种常用于各种文档的声明.防伪手段,一般可设置文字水印或者加载图片作为水印.以下内容将分享通过Java编程给Word文档添加水印效果的方法,即 文本水印图片水印使用工具:Free Spire.D ...
- java book打印机_java如何调用本地打印机进行图片打印
用java实现本地打印:java.awt中提供了一些打印的API,要实现打印,首先要获得打印对象,然后继承Printable实现接口方法print,以便打印机进行打印,最后用用Graphics2D直接 ...
- java 3d验证码_Java实现验证码具体代码(图片、汉字)
本文为大家分享两个实例,相信大家一定会喜欢. 实例1:随机生成验证码图片并将之输出为一个png文件 效果图: import java.awt.Color; import java.awt.Font; ...
- java+微博上传图片_java实现新浪微博Oauth接口发送图片和文字的方法
本文实例讲述了java实现新浪微博oauth接口发送图片和文字的方法.分享给大家供大家参考.具体如下: 基于网上很多人利用新浪api开发新浪微博客户端的时候遇到无法发图片的问题,很多人卡在了这一布.现 ...
最新文章
- googleapiclient.discovery
- 44 ansible ad-hoc模式
- jquery 滚动条插件
- svn:error use xcode-select to change
- SpringCloud 从菜鸟到大牛之七 服务网关 Zuul API网关等等
- Java虚拟机专题之类加载机制
- 对软件测试团队“核心价值”的思考
- Linux Centos firewall 防火墙 开启 80 端口配置案例
- java 新手入门电子书_java基础入门电子版pdf下载-java基础入门电子版百度云pdf高清版-东坡下载...
- u盘启动计算机的几种方式,U盘各种启动模式方法介绍 六种U盘启动模式
- 计算机房电器设备功率密度,WP155_R0_数据中心空间和功率密度需求的计算.pdf
- 用java设计一个三角形类_利用Java类库中的Point类设计一个三角形类,编程求三角形面积...
- 使用深度RNN模型构建语义搜索引擎
- session error的问题
- 明解C语言入门篇练习题第十三章
- 关于c++ STL库的一些总结
- Linux服务器下配置tomcat宕机重启
- C#对word文档的读取
- 一个月赚5万美元--国产共享软件开发者周奕2
- fopen与open的区别