中易网

Java 按比例缩小图片应该怎么实现?

答案:2  悬赏:80  
解决时间 2021-02-27 21:13
Java 按比例缩小图片应该怎么实现?
最佳答案
public Image resizeImg(Image img, int newWidth, int newHeight) {
int imgW = img.getWidth();
int imgH = img.getHeight();
int[] srcPixels = new int[imgW * imgH];
int[] destPixels = new int[newWidth * newHeight];
img.getRGB(srcPixels, 0, imgW, 0, 0, imgW, imgH);
int srcX;
int srcY;
for (int y = 0; y < newHeight; ++y) {
for (int x = 0; x < newWidth; ++x) {
srcX = (x * imgW) / newWidth;
srcY = (y * imgH) / newHeight;
destPixels[x + y * newWidth] = srcPixels[srcX + srcY * imgW];
}
}
return Image.createRGBImage(destPixels, newWidth, newHeight, true);
}
全部回答
image srcimg = imageio.read(new fileinputstream(fnsrc) );//取源图 int width = 600; //假设要缩小到600点像素 int height = srcimg.getheight(null)*600/srcimg.getwidth(null);//按比例,将高度缩减 system.out.println("width: "+srcimg.getwidth(null));// 这几行是调试用 system.out.println("height: "+srcimg.getheight(null)); system.out.println("width2: "+width); system.out.println("height2: "+height); image smallimg =srcimg.getscaledinstance(width, height, image.scale_smooth);//缩小
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
关于顺义的凯旋天成健身会所
3D视角 用VR看英雄联盟是什么体验
大英雄长湖酒楼在什么地方啊,我要过去处理事
漯河到上海要经过哪些城市
空港路/雅苑路(路口)这个地址在什么地方,我
莱州大型的化工企业?
好快开锁阳光NO.100地址有知道的么?有点事想
I think this film is w___ worth seeing
这款包是黑色百搭还是宝蓝色百搭
求世博会一日游攻略
有一部类似《特一营》的电视剧,也是徐佳演的
郝家沟邦子熏鸡熟食总店在哪里啊,我有事要去
女士耐克鞋限量款多少钱
Lose your heart and come to your senses 这
519888添富快线星期六星期日有利息吗
推荐资讯
去欧洲打黑工好还是去澳洲打黑工的好
占 这个字做姓的时候怎么读?
怎样把耶稣的生平用故事的形式讲出来
浙江省妇保医院妇科挂号费多少
温州地区有没有火车站?
什么鱼 贵吗
狗狗上呼吸道感染了挂盐水两天为什么还不吃东
华侨休闲广场怎么去啊,有知道地址的么
起亚k3油箱坏了,换个多少钱
北京航空航天大学-中法工程师学院这个地址在
南京有没有做成套柜的厂家。
帝斯曼中国园区地址在哪,我要去那里办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?