If you need to process with big images you may be faced with
OutOfMemoryError. It can be fixed by Xmx VM parameter
increasing, but this solution does not always fit.
Another solution is to read part of image from input stream:
ImageInputStream imageStream =
ImageIO.createImageInputStream(/*file or input stream*/);
ImageReader reader =
ImageIO.getImageReaders(imageStream).next();
ImageReadParam param = reader.getDefaultReadParam();
param.setSourceRegion(new Rectangle(200,200,300,200));
reader.setInput(imageStream,true,true);
BufferedImage subImage = reader.read(0,param);
reader.dispose();
imageStream.close();
Solution is taken from http://forums.sun.com/thread.jspa?threadID=5365540&tstart=0.
P.S: Yet again I found that accurate search query to Google solves many problems :)
Комментариев нет:
Отправить комментарий