1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
private static void convert(File source, File target, String extension) throws IOException {
// locate a reader for the good extension
Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName(extension);
if (!readers.hasNext())
throw new IllegalStateException("No reader found for extension " + extension);
ImageReader reader = readers.next();
// point it to our image file
ImageInputStream stream = ImageIO.createImageInputStream(source);
reader.setInput(stream);
// subsample the input image
ImageReadParam tiffReadParam = new ImageReadParam();
// read one page from the TIFF image
IIOImage tiffImage = reader.readAll(0, tiffReadParam);
// write JPG
ImageIO.write(tiffImage.getRenderedImage(), "jpg", target);
} |