永发信息网

java 如何给 图片局部打码

答案:1  悬赏:70  手机版
解决时间 2021-11-30 08:44
  • 提问者网友:低吟詩仙的傷
  • 2021-11-29 14:49
java 如何给 图片局部打码
最佳答案
  • 五星知识达人网友:酒安江南
  • 2021-11-29 15:00
把图片压缩成32*32这个不难,java有这样的类提供了方法
BufferedImage bi = new BufferedImage(w * 2 / scale, h * 2 / scale, bm.getType());//画布大小
Graphics2D g2 = bi.createGraphics();
g2.drawImage(bm, 0, 0, w * 2 / scale, h * 2 / scale, null); //绘制缩小后的图
// 转换成JPEG图像格式
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(bos);
JPEGEncodeParam jpeg = encoder.getDefaultJPEGEncodeParam(bi);
jpeg.setQuality(1f, false);
encoder.setJPEGEncodeParam(jpeg);
encoder.encode(bi);
byte[] data = bos.toByteArray();

但是要减少颜色数的话,这个比较麻烦,这个首先需要知道图片中
颜色空间,比如16色,32色等,你需要读取图片文件中的内容,然后根据图片头的信息
读取每个像素的RGB值(如果是RGB空间),并对每一个像素进行 颜色 设置
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯