ImageWriteParam iwparam = new JPEGImageWriteParam(Locale.getDefault()); iwparam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); iwparam.setCompressionQuality((quality / 100f));
JPEGImageWriteParam jpegParams = new JPEGImageWriteParam(null); jpegParams.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); jpegParams.setCompressionQuality(1f);
/** * Compress {@link BufferedImage} with a given quality into byte array. * * @param bi the {@link BufferedImage} to compres into byte array * @param quality the compressed image quality (1 = 100%, 0.5 = 50%, 0.1 = 10%, etc) * @return The size of compressed data (number of bytes) */ private int compress(BufferedImage bi, float quality) { baos.reset(); final JPEGImageWriteParam params = new JPEGImageWriteParam(null); params.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); params.setCompressionQuality(quality); try (MemoryCacheImageOutputStream mcios = new MemoryCacheImageOutputStream(baos)) { final ImageWriter writer = ImageIO.getImageWritersByFormatName("jpg").next(); writer.setOutput(mcios); writer.write(null, new IIOImage(bi, null, null), params); } catch (IOException e) { throw new IllegalStateException(e); } return baos.size(); }
imgWriter.setOutput( ioStream ); JPEGImageWriteParam jpegParams = new JPEGImageWriteParam( Locale.getDefault() ); jpegParams.setCompressionMode( ImageWriteParam.MODE_EXPLICIT ); jpegParams.setCompressionQuality( qualityFloat );
if (mediaType.equals(MediaType.valueOf("image/jpeg"))) param = new JPEGImageWriteParam(Locale.US);
if (mediaType.equals(MediaType.valueOf("image/jpeg"))) param = new JPEGImageWriteParam(Locale.US);
JPEGImageWriteParam param = new JPEGImageWriteParam(<pass your lacale here>); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionType("JPEG"); param.setCompressionQuality(0.2f); param.setProgressiveMode( ImageWriteParam.MODE_DEFAULT );
import javax.imageio.IIOImage; import javax.imageio.ImageIO; import javax.imageio.ImageWriteParam; import javax.imageio.ImageWriter; import javax.imageio.plugins.jpeg.JPEGImageWriteParam; import javax.imageio.stream.ImageOutputStream; //---- float quality = 0.85f; File outfile = new File( "MyImage.jpg" ); BufferedImage image = ...; ImageWriter imgWriter = ImageIO.getImageWritersByFormatName( "jpg" ).next(); ImageOutputStream ioStream = ImageIO.createImageOutputStream( outfile ); imgWriter.setOutput( ioStream ); JPEGImageWriteParam jpegParams = new JPEGImageWriteParam( Locale.getDefault() ); jpegParams.setCompressionMode( ImageWriteParam.MODE_EXPLICIT ); jpegParams.setCompressionQuality( quality ); imgWriter.write( null, new IIOImage( image, null, null ), jpegParams ); ioStream.flush(); ioStream.close(); imgWriter.dispose();
BufferedImage image = ImageIO.read(new File("google.jpg")); ImageWriter w = ImageIO.getImageWritersBySuffix("jpg").next(); ImageOutputStream out = ImageIO.createImageOutputStream(new File("output.jpg")); w.setOutput(out); ImageWriteParam param = new JPEGImageWriteParam(Locale.getDefault()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(1); w.write(null, new IIOImage(image, null, null), param); out.close();
// set JPG params JPEGImageWriteParam param = new JPEGImageWriteParam(Locale.getDefault()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(1); param.setOptimizeHuffmanTables(true); // save the image with new comment inside IIOImage iioimage = new IIOImage(img, null, meta); writer.setOutput(ImageIO.createImageOutputStream(new File("some_modified.jpg"))); writer.write(null, iioimage, param);
private Image getJpegCompressedImage(BufferedImage image) throws IOException { float qualityFloat = (float)quality.getValue()/100f; ByteArrayOutputStream outStream = new ByteArrayOutputStream(); ImageWriter imgWriter = ImageIO.getImageWritersByFormatName( "jpg" ).next(); ImageOutputStream ioStream = ImageIO.createImageOutputStream( outStream ); imgWriter.setOutput( ioStream ); JPEGImageWriteParam jpegParams = new JPEGImageWriteParam( Locale.getDefault() ); jpegParams.setCompressionMode( ImageWriteParam.MODE_EXPLICIT ); jpegParams.setCompressionQuality( qualityFloat ); // Set the compression level imgWriter.write( null, new IIOImage( image, null, null ), jpegParams ); ioStream.flush(); ioStream.close(); imgWriter.dispose(); jpgSize = outStream.toByteArray().length; BufferedImage compressedImage = ImageIO.read(new ByteArrayInputStream(outStream.toByteArray())); return compressedImage; }
public static void updateJPEGParams() { jpegParams = new JPEGImageWriteParam(null); jpegParams.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); jpegParams.setCompressionQuality(JPGWriter.QUALITY); }
//create the params JPEGImageWriteParam jpegParams = new JPEGImageWriteParam(null); jpegParams.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); jpegParams.setCompressionQuality(1f);//set compression quality
@Override public void encodeAndWriteTo(OutputStream stream) throws IoParseException { try { JPEGImageWriteParam p = new JPEGImageWriteParam(null); p.setCompressionMode(JPEGImageWriteParam.MODE_DEFAULT); write(drawChartToImage(), mimeType.getFormatName(), stream); } catch (IOException e) { throw new IoParseException("Could not write image to output stream.", e); } finally { try { stream.flush(); stream.close(); } catch (IOException e) { LOGGER.debug("Stream already flushed and closed.", e); } } }
@Override ImageWriteParam newImageWriterParams(PdfToJpegParameters params) { JPEGImageWriteParam param = new JPEGImageWriteParam(writer.getLocale()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality((float) params.getQuality() / 100); return param; }
/** {@inheritDoc} */ @Override protected ImageWriteParam getDefaultWriteParam( ImageWriter iiowriter, RenderedImage image, ImageWriterParams params) { JPEGImageWriteParam param = new JPEGImageWriteParam(iiowriter.getLocale()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(params.getJPEGQuality()); if (params.getCompressionMethod() != null && !"JPEG".equals(params.getCompressionMethod())) { throw new IllegalArgumentException( "No compression method other than JPEG is supported for JPEG output!"); } if (params.getJPEGForceBaseline()) { param.setProgressiveMode(JPEGImageWriteParam.MODE_DISABLED); } return param; }
/** {@inheritDoc} */ @Override protected ImageWriteParam getDefaultWriteParam( ImageWriter iiowriter, RenderedImage image, ImageWriterParams params) { JPEGImageWriteParam param = new JPEGImageWriteParam(iiowriter.getLocale()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(params.getJPEGQuality()); if (params.getCompressionMethod() != null && !"JPEG".equals(params.getCompressionMethod())) { throw new IllegalArgumentException( "No compression method other than JPEG is supported for JPEG output!"); } if (params.getJPEGForceBaseline()) { param.setProgressiveMode(JPEGImageWriteParam.MODE_DISABLED); } return param; }
/** {@inheritDoc} */ @Override protected ImageWriteParam getDefaultWriteParam( ImageWriter iiowriter, RenderedImage image, ImageWriterParams params) { JPEGImageWriteParam param = new JPEGImageWriteParam(iiowriter.getLocale()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(params.getJPEGQuality()); if (params.getCompressionMethod() != null && !"JPEG".equals(params.getCompressionMethod())) { throw new IllegalArgumentException( "No compression method other than JPEG is supported for JPEG output!"); } if (params.getJPEGForceBaseline()) { param.setProgressiveMode(JPEGImageWriteParam.MODE_DISABLED); } return param; }
/** {@inheritDoc} */ @Override protected ImageWriteParam getDefaultWriteParam( ImageWriter iiowriter, RenderedImage image, ImageWriterParams params) { JPEGImageWriteParam param = new JPEGImageWriteParam(iiowriter.getLocale()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(params.getJPEGQuality()); if (params.getCompressionMethod() != null && !"JPEG".equals(params.getCompressionMethod())) { throw new IllegalArgumentException( "No compression method other than JPEG is supported for JPEG output!"); } if (params.getJPEGForceBaseline()) { param.setProgressiveMode(JPEGImageWriteParam.MODE_DISABLED); } return param; }
/** {@inheritDoc} */ @Override protected ImageWriteParam getDefaultWriteParam( ImageWriter iiowriter, RenderedImage image, ImageWriterParams params) { JPEGImageWriteParam param = new JPEGImageWriteParam(iiowriter.getLocale()); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(params.getJPEGQuality()); if (params.getCompressionMethod() != null && !"JPEG".equals(params.getCompressionMethod())) { throw new IllegalArgumentException( "No compression method other than JPEG is supported for JPEG output!"); } if (params.getJPEGForceBaseline()) { param.setProgressiveMode(JPEGImageWriteParam.MODE_DISABLED); } return param; }