问题描述
说明图片是切好,但切出的图片显示全黑色。请高手帮忙!/***图片切割*@paramsrcImageFile图片地址*@paramImageFile图片存放的地址*@paramw切割宽度*@paramh切割高度*@paramx1开始x结点(left)*@paramy1开始y结点(top)*@paramsw图片宽度*@paramsh图片高度*@throwsIOException*/publicstaticvoidcut(StringsrcImageFile,StringImageFile,intw,inth,intx1,inty1,intsw,intsh)throwsIOException{//http://localhost:8080/ImpCra/createServlet?p=Sunset.jpg&x=117&y=201&w=61&h=50&pw=300&ph=400Imageimg;ImageFiltercropFilter;//读取源图像BufferedImagebi=ImageIO.read(newFile(srcImageFile));if(sw>=w&&sh>=h){//创建此图像的缩放版本//Imageimage=bi.getScaledInstance(sw,sh,Image.SCALE_DEFAULT);//四个参数分别为图像起点坐标和宽高//即:CropImageFilter(intx,inty,intwidth,intheight)//按指定x、y、w和h参数从源Image提取绝对矩形区域来构造CropImageFiltercropFilter=newCropImageFilter(x1,y1,w,h);img=Toolkit.getDefaultToolkit().createImage(newFilteredImageSource(bi.getSource(),cropFilter));BufferedImagetag=newBufferedImage(w,h,BufferedImage.TYPE_INT_RGB);Graphicsg=tag.getGraphics();g.drawImage(img,0,0,null);//绘制缩小后的图g.dispose();//输出为文件ImageIO.write(tag,"JPEG",newFile(ImageFile));}}