用户: 密码: 答案:   我要注册   忘记密码

加入收藏  设为首页

开发文档

CNJM首页

业界新闻

手机软件

终端应用

资源下载

EclipseME

CNJM论坛

                 

频道列表

J2ME开发 176篇
服务器端开发 33篇
JAVA语言 71篇
游戏与图形 101篇
WindowsMobile开发 6篇
Symbian开发 61篇
Brew开发 36篇
其它开发平台 6篇

热点文章

cookie和session机... 8714次
介绍一篇关于sessi... 8088次
一个可扩展的高速U... 6775次
[J2EE新手入门]使...  6649次
使用Java实现UBBCo... 6645次
JSP安全性初探 6541次
在Win2K+resin中配... 6163次
Apache下 配置WAP ... 6019次
JSP应用程序开发中... 5952次
所有支持WAP手机上... 5863次
J2EE应用性能问题...  5766次
JSP实用篇 5743次

文章搜索

搜 索
按 照
频 道
  
上传图片的缩放处理
编辑:rocks    审核:rocks    文章来源:网络采集
关键词:无    发表日期:2006-03-02 14:07:10    浏览次数:4548次
本文版权归原作者,中国JAVA手机网收录本文的目的是让更多人阅读到此文章。转载请注明出处为中国JAVA手机网<www.cnjm.net>
来自:http://www.cnjm.net/tech/article1062.html

import java.io.File;
import java.awt.image.BufferedImage;
import java.awt.Image;
JAVA手机网[www.cnjm.net]
import java.awt.image.AffineTransformOp;
import javax.imageio.ImageIO;
import java.awt.geom.AffineTransform;

public class UploadImg {
JAVA手机网[www.cnjm.net]
   
JAVA手机网[www.cnjm.net]
   String fromdir;            // fromdir 图片的原始目录
   String todir;            // todir 处理后的图片存放目录
   String imgfile;            // imgfile 原始图片
   String sysimgfile;        // sysimgfile 处理后的图片文件名前缀

   UploadImg( String fromdirNow, String todirNow, String imgfileNow, String sysimgfileNow ){
       fromdir = fromdirNow;
       todir = todirNow;
       imgfile = imgfileNow;
       sysimgfile = sysimgfileNow;
   }

   public boolean CreateThumbnail() throws Exception
       {
       // fileExtNmae是图片的格式 gif JPG 或png
       // String fileExtNmae="";
       double Ratio = 0.0;
       File F = new File(fromdir,imgfile);
       if ( !F.isFile() )
           throw new Exception(F+" is not image file error in CreateThumbnail!");
       
       //首先判断上传的图片是gif还是JPG ImageIO只能将gif转换为png
       // if (isJpg(imgfile)){
       //    fileExtNmae="jpg";
       //    }
       //else{
       //    fileExtNmae="png";
       //    }
       File ThF = new File( todir, sysimgfile + ".jpg" );
       
       BufferedImage Bi = ImageIO.read(F);
       //假设图片宽 高 最大为120 120
       Image Itemp = Bi.getScaledInstance (120,120,Bi.SCALE_SMOOTH);
       
JAVA手机网[www.cnjm.net]
       if ((Bi.getHeight()>120) || (Bi.getWidth()>120)){
           if (Bi.getHeight()>Bi.getWidth())
               Ratio = 120.0/Bi.getHeight();
JAVA手机网[www.cnjm.net]
           else
               Ratio = 120.0/Bi.getWidth();
           }
JAVA手机网[www.cnjm.net]
       
       AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(Ratio, Ratio), null);
       Itemp = op.filter(Bi, null);
       try {
           ImageIO.write((BufferedImage)Itemp, "jpg", ThF);
           }
       catch (Exception ex) {
           throw new Exception(" ImageIo.write error in CreatThum.: "+ex.getMessage());
JAVA手机网[www.cnjm.net]
           }
       return (true);
   }

   public static void main(String[] args)
   {
       UploadImg UI;
       boolean ss = false;

       try{
           UI = new UploadImg( "d:\\javalearn", "d:\\javalearn", "ps_high.jpg", "ps_low" );
JAVA手机网[www.cnjm.net]
           ss = UI.CreateThumbnail();
           if ( ss ) {
               System.out.println( "Success" );
               }
           else{
               System.out.println( "Error" );
               }
       }
       catch(Exception e){
           System.out.print(e.toString());
       }
   }
}
来自:http://www.cnjm.net/tech/article1062.html

相关文章
   暂无相关文章
最新评论
网站简介  |  关于版权  |  广告服务  |  网站地图  |  联系我们
Copyright © www.CNJM.net, All rights reserved
中国JAVA手机网 版权所有
ICP备案:京ICP备041452