JAVA实现图片大小的改变
2012-07-10 15:46
260 查看
下面程序是将一张图片修改成50*50的图片 ,可以通过修改 new_wi和new_he来调整
public byte[] imageChangeSize(byte[] data) throws IOException {
int orig_wi = 0 ;
int orig_hi = 0 ;
int fin_w = 0 ;
int fin_h = 0 ;
int new_wi = 50;
int new_he = 50;
// byte[] data = getPicture(row, col);
InputStream is = new ByteArrayInputStream(data);
BufferedImage bufImg = ImageIO.read(is);
orig_wi = bufImg.getWidth();
orig_hi = bufImg.getHeight();
if(orig_wi < new_wi){
fin_w = orig_wi;
}else{
fin_w = new_wi;
}
if(orig_hi < new_he){
fin_h = orig_hi;
}else{
fin_h = new_he;
}
BufferedImage bf = new BufferedImage(new_wi,new_he,BufferedImage.TYPE_INT_RGB );
bf.getGraphics().drawImage(bufImg.getScaledInstance(fin_w, fin_h, Image.SCALE_SMOOTH),0,0,fin_w, fin_h,null);
ByteArrayOutputStream out = new ByteArrayOutputStream();
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(bf);
byte[] re = out.toByteArray();
return re;
}
public byte[] imageChangeSize(byte[] data) throws IOException {
int orig_wi = 0 ;
int orig_hi = 0 ;
int fin_w = 0 ;
int fin_h = 0 ;
int new_wi = 50;
int new_he = 50;
// byte[] data = getPicture(row, col);
InputStream is = new ByteArrayInputStream(data);
BufferedImage bufImg = ImageIO.read(is);
orig_wi = bufImg.getWidth();
orig_hi = bufImg.getHeight();
if(orig_wi < new_wi){
fin_w = orig_wi;
}else{
fin_w = new_wi;
}
if(orig_hi < new_he){
fin_h = orig_hi;
}else{
fin_h = new_he;
}
BufferedImage bf = new BufferedImage(new_wi,new_he,BufferedImage.TYPE_INT_RGB );
bf.getGraphics().drawImage(bufImg.getScaledInstance(fin_w, fin_h, Image.SCALE_SMOOTH),0,0,fin_w, fin_h,null);
ByteArrayOutputStream out = new ByteArrayOutputStream();
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(bf);
byte[] re = out.toByteArray();
return re;
}
相关文章推荐
- Java实现图片压缩代码,图片大小转换
- Java代码实现对图片压缩大小
- Java改变图片的大小
- 纯java代码 改变图片的大小
- java在label 上设置图片并且可以随便改变大小的方法
- 简单的改变图片大小的java工具类
- Java改变图片的大小
- java改变图片大小
- Java实现图片压缩代码,图片大小转换
- JAVA改变图片大小,将图片改为Jpg格式
- java代码实现对图片压缩大小
- java中 实现无标题无边框的窗体能够用鼠标拖动改变窗口大小
- jQuery动态改变图片显示大小(修改版)的实现思路及代码
- jQuery动态改变图片显示大小(修改版)的实现思路及代码
- java在线聊天项目 swt可视化窗口Design 登录框注册按钮点击改变窗口大小——出现注册面板 实现打开登录框时屏幕居中
- 用struts实现单个文件上传并改变上传图片的大小
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
- java将图片缩放实现类(能将jpg、bmp、png、gif图片文件,进行等比或非等比的大小转换)
- java中用Thumbnailator对图片各种处理的方法(可做到对原图片压缩仅改变大小)
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作