栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

将数据类型TYPE_4BYTE_ABGR的字节数组转换为BufferedImage

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

将数据类型TYPE_4BYTE_ABGR的字节数组转换为BufferedImage

可能效率不是很高,但是

BufferedImage
可以通过以下方式将a转换为另一种类型:

public static BufferedImage convertToType(BufferedImage image, int type) {    BufferedImage newImage = new BufferedImage(image.getWidth(), image.getHeight(), type);    Graphics2D graphics = newImage.createGraphics();    graphics.drawImage(image, 0, 0, null);    graphics.dispose();    return newImage;}

关于您要实现的方法,您必须知道图像的宽度或高度才能将a转换

byte[]
为a
BufferedImage

编辑:
一种方法是将转换

byte[]
int[]
(数据类型
TYPE_INT_ARGB
)并使用
setRGB

int[] dst = new int[width * height];for (int i = 0, j = 0; i < dst.length; i++) {    int a = src[j++] & 0xff;    int b = src[j++] & 0xff;    int g = src[j++] & 0xff;    int r = src[j++] & 0xff;    dst[i] = (a << 24) | (r << 16) | (g << 8) | b;}BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);image.setRGB(0, 0, width, height, dst, 0, width);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/431337.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号