title: How to read image in parts (not ImageIO.read())?
body: <p>Java supports reading of whole images with <code>ImageIO.read()</code>, but <strong>is there a way of reading an image only partially?</strong></p>
  
  <p>Background:</p>
  
  <p>I'm working on a map application that reads large images, splits them up, then uses the generated tiles as the background of a map. In some cases the provided image can be so large that reading the Image as a <code>BufferedImage</code> might already cause an <code>OutOfMemoryError</code>.</p>
  
  <p>I'm aware I could grant the VM more heap space, still I'd prefer a way to further reduce the risk by reading the image only in parts, i. e. in tiles of 256*256 pixels, that I could save straight away to the file system.</p>