Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
getBufferedImage() only returns the first image. There should be a way to retrieve any image by index (and by extension, an API to get the image count.)
getBufferedImages() cannot be used for large multi-page TIFF files, because creating that many BufferedImage objects causes an OutOfMemoryError.
(For that matter, a method to get a scaled down copy would be useful as well, as some formats can optimise that not to retrieve all the data, but also it means you can reduce the memory usage for absolutely massive images.)
I've thought about working on this problem a couple of times. One of the reasons I've never made much progress on it is that I lack good sample data. Would you be in a position to supply some multi-page TIFFs? I'd prefer samples containing relatively small images. It will make development easier to work with smaller files in the initial phase.
Alternately, if you know of a source of sample images in the public domain on the web, please let me know.