private BufferedImage imageAtMost()

in thumbnails4j-image/src/main/java/co/elastic/thumbnails4j/image/ImageThumbnailer.java [94:109]


    private BufferedImage imageAtMost(Object input, Dimensions dimensions) throws IOException, ThumbnailingException {
        try (ImageInputStream stream = ImageIO.createImageInputStream(input)) {
            Iterator<ImageReader> readers = ImageIO.getImageReaders(stream);
            if (!readers.hasNext()) {
                throw new ThumbnailingException("Image stream contained no images");
            }
            ImageReader reader = readers.next();
            reader.setInput(stream);
            ImageReadParam param = reader.getDefaultReadParam();
            param.setSourceRegion(new Rectangle(0, 0, dimensions.getWidth(), dimensions.getHeight()));

            BufferedImage image = reader.read(0, param);
            reader.dispose();
            return image;
        }
    }