public static void cutImage(File file)
{
String fileName =
file.getPath();
String lastName =
fileName.substring(fileName.lastIndexOf(".") +
1,fileName.length());
FileInputStream fis = null;
ImageInputStream iis = null;
try
{
/**读取图片*/
Iterator<ImageReader> it =
ImageIO.getImageReadersByFormatName(lastName);
ImageReader reader =
it.next();
/**获取图片流*/
fis = new
FileInputStream(file);
iis =
ImageIO.createImageInputStream(fis);
reader.setInput(iis,
true);
ImageReadParam param =
reader.getDefaultReadParam();
BufferedImage image =
null;
image =
ImageIO.read(file);
int width =
image.getWidth();
int height =
image.getHeight();
Rectangle
rect;
if
(300 < height)
{
rect = new Rectangle(0, 0, width,
height-50);
} else
{
rect = new Rectangle(0, 0, width,
height);
}
param.setSourceRegion(rect);
BufferedImage bi = reader.read(0,
param);
ImageIO.write(bi, lastName, file);
} catch (Exception ex)
{
ex.printStackTrace();
} finally
{
try
{
if (fis != null)
{
fis.close();
}
if (iis != null)
{
iis.close();
}
} catch
(Exception ex)
{
ex.printStackTrace();
}
}
}
原文:http://www.cnblogs.com/sand-tiny/p/3582794.html