oschina的上传头像功能中是如何对用户上传的图片进行缩放的?

FoxHu 发布于 2012/10/29 20:12
阅读 1K+
收藏 5

@红薯 ,@tsl0922  你好,想跟你请教个问题:看了你公布的oschina上传头像功能源码http://www.oschina.net/code/snippet_12_1323,upload_portrait的方法是上传用户的图片,其中

int[] sizes = Multimedia.saveImage(imgFile, user_path + uri);

是将上传的图片保存到指定的路径,看了公布的Multimedia类的源码,Multimedia.saveImage的方法是

/**
	 * 保存原图
	 * @param img
	 * @param dest
	 * @return
	 * @throws IOException
	 */
	public static int[] saveImage(File img, String dest) throws IOException {
		File fileDest = new File(dest);
		if(!fileDest.getParentFile().exists())
			fileDest.getParentFile().mkdirs();
		String ext = FilenameUtils.getExtension(dest).toLowerCase();
		BufferedImage bi = (BufferedImage)ImageIO.read(img);
		return ImageIO.write(bi, ext.equals("png")?"png":"jpeg", fileDest)?new int[]{bi.getWidth(),bi.getHeight()}:null;
	}


没有发现对图片进行缩放的啊?我上传了一张1600*1000的图片,但是ajax返回到页面上的图片是640*400进行缩放过的,这是怎么实现的呢?@红薯 @tsl0922 谢谢!

加载中
0
tsl0922
tsl0922
图片缩放有专门方法的,我记得代码好像公开了,你再找找看。下班了,手机不方便
FoxHu
FoxHu
回复 @tsl0922 : 谢谢!
tsl0922
tsl0922
回复 @FoxHu : saveImage是可以指定图片的宽高的啊,相关的源码在这里都有的 http://www.oschina.net/code/snippet_12_3206
FoxHu
FoxHu
好的,谢谢!你回头找到代码能否发给我看看?谢谢!
0
本杰明
本杰明
@tsl0922 这个缩放是在哪里做的?代码整个走下来,没有看见怎么缩放的,缩放的原理能解释下吗?谢谢!
0
Sumail
Sumail
这个web开发也是经常用到
返回顶部
顶部