浏览 3987 次
锁定老帖子 主题:在J2ME中实现高效高质缩小图片
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-14
虽然不能实现任意比例放缩,但以下算法短小精悍效率高,可用于一些特定场合,比如:显示图片的缩略图等。 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); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-07-12
用的是什么原理啊
|
|
返回顶楼 | |
发表时间:2011-11-14
感觉到强大...可是怎样用的....有些看不明白
|
|
返回顶楼 | |