详细解决方案
在J2ME中兑现高效高质缩小图片
热度:765 发布时间:2016-04-17 21:24:39
以下算法可以把一张图片快速缩小到原大小的1/4,即长宽都为原来的一半,且因为使用邻域组合的算法(即从原图4个像素累加再4等分得到新图上的一个像素),效果非常好。
虽然不能实现任意比例放缩,但以下算法短小精悍效率高,可用于一些特定场合,比如:显示图片的缩略图等。
int w1 = img1.getWidth(), h1 = img1.getHeight(), w2 = w1 >>> 1, h2 = h1 >>> 1;
int[] rgb1 = new int[w1 * h1];
img1.getRGB(rgb1, 0, w1, 0, 0, w1, h1);
int[] rgb2 = new int[w2 * h2];
int i1, j1, i2, j2, n;
for (j2 = j1 = 0, n = w2 * h2; j2 < n; j2 += w2, j1 += 2 * w1) {
for (i2 = i1 = 0; i2 < w2; i2++, i1 += 2) {
int p1 = rgb1[j1 + i1], p2 = rgb1[j1 + i1 + 1], p3 = rgb1[j1 + w1 + i1], p4 = rgb1[j1 + w1 + i1 + 1];
rgb2[j2 + i2] = ((p1 & 0x00FCFCFC) >>> 2) + ((p2 & 0x00FCFCFC) >>> 2) + ((p3 & 0x00FCFCFC) >>> 2) + ((p4 & 0x00FCFCFC) >>> 2);
}
}
Image img2 = Image.createRGBImage(rgb2, w2, h2, false);
相关解决方案
- j2me 拨号有关问题
- j2me pim 个人信息管理解决思路
- J2ME 开发 视频聊天解决办法
- J2ME 改变字体大小解决办法
- j2me 获取wap站点发生的验证码图片,求高手解答
- j2me 验证码提交,该怎么解决
- 文件抛java.io.IOException: at com.sun.midp.io.j2me.file.Protocol.delete错误
- j2me 环境筹建
- j2me setRequestProperty解决办法
- j2me 怎么获取当月的天数!
- j2me 用ksoap连接webservice 的有关问题
- j2me 排序步骤 整数数组
- Effective J2ME(一)
- Effective J2ME(三)
- J2ME 本土文件读写
- J2me 游戏点阵字库发动机(一) 之初步
- J2ME Mobile 3D入门教程(2)
- 手机 J2ME MIDP 性能测试用具(MIDP BenchMark)
- fedora 上 j2me 的 中文 乱码
- J2ME UI之窗口构件选择条
- J2ME UI之窗口元件背景
- j2me 排雷游戏
- J2ME 图片上载实例 简洁明了
- j2me 后台老板运行
- 鸟哥,j2me,D608一些有关问题
- j2me 创造多级文件夹方法
- Effective J2ME (一)
- Effective J2ME (三)
- J2ME Mobile 3D入门教程(1)
- j2me rms 的奇怪有关问题