wangchao.org
添加收藏 | 博客
 
购物视频论坛IT业界自然风光美女图片王朝网络小游戏BT下载生活百科编程设计手机图铃小说
 
笑话 | 水库 | 娱乐 | 体育 | 英语 | 宠物 | 美食 | 旅游 | 养生 | 手机 | 数码 | 汽车 | 珠宝 | 美容 | 装修 | 厨房 | 科普 | 动物 | 植物 | 影音 | 百科 | 知道 | 词典
  
 
 您好! 您现在位于: 王朝网络 → 编程设计 → 《JAVA中图片文件的缩放返回上一页 
 
1楼 

JAVA中图片文件的缩放

  网上购物、在线购物、购物搜索 欢迎光临本站购买图书、影视、音乐、数码、百货,手机等商品。

  需要对图片进行处理,使之能够适当的显示在画面中。找到一些资料后,处理也比较简单代码: /* * AndyChen(andy.chen.sh@gmail.com) * **/ public static Icon getFixedBoundIcon(String filePath, int height, int width) throws Exception{ double Ratio=0.0; //缩放比例 File F = new File(filePath); if (!F.isFile()) throw new Exception(F+" is not image file error in getFixedBoundIcon!"); Icon ret = new ImageIcon(filePath); BufferedImage Bi = ImageIO.read(F); if ((Bi.getHeight()>height) (Bi.getWidth()>width)){ if (Bi.getHeight()>Bi.getWidth()){ Ratio = (new Integer(height)).doubleValue() /Bi.getHeight(); } else { Ratio = (new Integer(width)).doubleValue()/Bi.getWidth(); } File ThF = new File(filePath+"_"+height +"_"+width); Image Itemp = Bi.getScaledInstance (width,height,Bi.SCALE_SMOOTH); AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(Ratio, Ratio), null); Itemp = op.filter(Bi, null); try { ImageIO.write((BufferedImage)Itemp, "jpg", ThF); ret = new ImageIcon(ThF.getPath()); }catch (Exception ex) { } } return ret; }

  需要对图片进行处理,使之能够适当的显示在画面中。找到一些资料后,处理也比较简单代码: /* * AndyChen(andy.chen.sh@gmail.com) * **/ public static Icon getFixedBoundIcon(String filePath, int height, int width) throws Exception{ double Ratio=0.0; //缩放比例 File F = new File(filePath); if (!F.isFile()) throw new Exception(F+" is not image file error in getFixedBoundIcon!"); Icon ret = new ImageIcon(filePath); BufferedImage Bi = ImageIO.read(F); if ((Bi.getHeight()>height) (Bi.getWidth()>width)){ if (Bi.getHeight()>Bi.getWidth()){ Ratio = (new Integer(height)).doubleValue() /Bi.getHeight(); } else { Ratio = (new Integer(width)).doubleValue()/Bi.getWidth(); } File ThF = new File(filePath+"_"+height +"_"+width); Image Itemp = Bi.getScaledInstance (width,height,Bi.SCALE_SMOOTH); AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(Ratio, Ratio), null); Itemp = op.filter(Bi, null); try { ImageIO.write((BufferedImage)Itemp, "jpg", ThF); ret = new ImageIcon(ThF.getPath()); }catch (Exception ex) { } } return ret; }

 
标签: JAVA  图片  文件  缩放  
 
您可以将本页贴到其他网站
UBB代码HTML代码
 
 
 
 
 
 
 更多内容
 ·java中文件长度的转换 ·java中文内部乱码处理 ·Java中数组之间的比较 ·java中关于星期时间的操作
 ·JAVA中几个易混淆关键词的理解 ·java中动态执行一段代码 ·Java中对文件的操作 ·java中关于html的转换
 ·java中的字节码 ·Java中的移位操作 ·JAVA中的数组研究 ·java中的传值与传reference .
 ·java中的基于套结字(socket)的通 ·Java中的模式(1) ·Java中的Big/Little问题 ·Java中的Sizeof(二)
 ·java中的常见问题 ·Java中得到一个字符串中每个字符 ·java中的 by value or by refere ·Java中new DerivedClass()时背后
 ·java中按字节截取String字符串. ·JAVA中播放声音的一个程序 ·WindowsXP下JDK的配置 ·BEA的WorkshopStudio开发者的IDE
 
 
最新评论  点此查看所有评论
 
 
 
 
发表评论(支持UBB码)


验证码:  
 
 
 
© 2005- 王朝网络 版权所有