这个函数是我以前在网上搜罗到的,且不谈效果,性能什么的。只觉得它非常好用。
用了很长时间,可惜不知道是谁。真要谢谢这位作者了。
这个函数使用了midp2.0的getRGB()函数,效率不错,基本上没什么可优化的了。
-
publicstaticImageZoomImage(Imagesrc,intdesW,intdesH){
-
ImagedesImg=null;
-
intsrcW=src.getWidth();
-
intsrcH=src.getHeight();
-
int[]srcBuf=newint[srcW*srcH];
- src.getRGB(srcBuf,0,srcW,0,0,srcW,srcH);
-
-
int[]tabY=newint[desH];
-
int[]tabX=newint[desW];
-
intsb=0;
-
intdb=0;
-
inttems=0;
-
inttemd=0;
-
intdistance=srcH>desH?srcH:desH;
-
for(inti=0;i<=distance;i++){
- tabY[db]=sb;
- tems+=srcH;
- temd+=desH;
-
if(tems>distance){
- tems-=distance;
- sb++;
- }
-
if(temd>distance){
- temd-=distance;
- db++;
- }
- }
- sb=0;
- db=0;
- tems=0;
- temd=0;
- distance=srcW>desW?srcW:desW;
-
for(inti=0;i<=distance;i++){
-
tabX[db]=(short)sb;
- tems+=srcW;
- temd+=desW;
-
if(tems>distance){
- tems-=distance;
- sb++;
- }
-
if(temd>distance){
- temd-=distance;
- db++;
- }
- }
-
-
int[]desBuf=newint[desW*desH];
-
intdx=0;
-
intdy=0;
-
intsy=0;
-
intoldy=-1;
-
for(inti=0;i<desH;i++){
-
if(oldy==tabY[i]){
- System.arraycopy(desBuf,dy-desW,desBuf,dy,desW);
-
}else{
- dx=0;
-
for(intj=0;j<desW;j++){
- desBuf[dy+dx]=srcBuf[sy+tabX[j]];
- dx++;
- }
- sy+=(tabY[i]-oldy)*srcW;
- }
- oldy=tabY[i];
- dy+=desW;
- }
-
-
desImg=Image.createRGBImage(desBuf,desW,desH,false);
-
returndesImg;
- }
分享到:
相关推荐
j2me图片缩放方法,很实用的小方法,来看看吧
基于j2me的图片特效(缩放,裁剪,调整大小,镜像,对比度亮度调整,黑白,线条,粉笔画)
基于j2me的图片特效(缩放,裁剪,调整大小,镜像,对比度亮度调整,黑白,线条,粉笔画) 源码 封装好了类
j2me中对图片处理的代码,可对图片进行缩放裁剪等
基于j2me的图片特效处理类(缩放,裁剪,调整大小,镜像,对比度亮度调整,黑白,线条,粉笔画)
该文件中的代码是用j2me语言编写的JpG缩放代码,做过测试。关键代码做成PDF文档了。
在WTK2.5的DEFAULTCOLORPHONE和S60 3rd模拟器上测试... 具有指定保存路径, 缩放图片, 保存图片, 解析指定像素颜色, 是一个简单的利用手机拍摄图片的分析软件, 希望对各位有所帮助 :0) 解压后用eclipse导入工程项目即可.
获得图片所有象素点到数组当中,再使用自定义的exlarge(short pixels[],int w,int h,float timew,float timeh)方法对其进行扩展操作,pixels源数组,w原宽度,h原高度,timew宽度缩放倍数,timeh高度缩放倍数
4 支持高效的图片缩放旋转,alpha混色效果。 5 多种显示函数,提供不同的性能。 6 直线,矩形,三角形,圆形等几何图形的绘制。 7 音频支持,用于播放声音,mp3,wav,可扩展 8 视频支持,用于播放动画,pmp支持...
二十六、 超级玛丽制作揭秘26菜单控制 窗口缩放 76 二十七、 超级玛丽制作揭秘27程序框架WinProc 80 二十八、 InitInstance函数说明 85 二十九、 后记 87 以下的资源也很不错, 加减可以看一下o 使用C++制作3D动画...
4.23 动态放大缩小ImageView里的图片——运用Matrix对象来缩放图文件 4.24 动态旋转图片——Bitmap与Matrix旋转ImageView 4.25 猜猜我在想什么——RadioButtonID 4.26 离开与关闭程序的弹出窗口——对话窗口上的ICON...