protected ImageOutputter getOutputter() { Iterator<ImageWriter> writers = ImageIO.getImageWritersByFormatName(getOriginalFormatName()); if (writers.hasNext()) { ImageWriter writer = writers.next(); ImageWriteParam param = writer.getDefaultWriteParam(); if (getOriginalFormatName().equals("jpeg")) { param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(config.getJpegCompression()); } return new ImageIOOutputter(writer, param); } return new SanselanOutputter(FORMAT_NAME_TO_IMAGE_FORMAT.get(getOriginalFormatName())); }
protected ImageOutputter getOutputter() { Iterator<ImageWriter> writers = ImageIO.getImageWritersByFormatName(getOriginalFormatName()); if (writers.hasNext()) { ImageWriter writer = writers.next(); ImageWriteParam param = writer.getDefaultWriteParam(); if (getOriginalFormatName().equals("jpeg")) { param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(config.getJpegCompression()); if (param instanceof JPEGImageWriteParam) { ((JPEGImageWriteParam) param).setOptimizeHuffmanTables( config.getJpegHuffmanOptimization()); } } JpegImageUtils.SamplingModes samplingMode = JpegImageUtils.SamplingModes.DEFAULT; if (config.getJpegRetainSubsampling() && sourceImageParams != null) { samplingMode = sourceImageParams.getSamplingMode(); } return new ImageIOOutputter(writer, param, samplingMode); } return new SanselanOutputter(FORMAT_NAME_TO_IMAGE_FORMAT.get(getOriginalFormatName())); }
protected ImageOutputter getOutputter() { Iterator<ImageWriter> writers = ImageIO.getImageWritersByFormatName(getOriginalFormatName()); if (writers.hasNext()) { ImageWriter writer = writers.next(); ImageWriteParam param = writer.getDefaultWriteParam(); if (getOriginalFormatName().equals("jpeg")) { param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(config.getJpegCompression()); } return new ImageIOOutputter(writer, param); } return new SanselanOutputter(FORMAT_NAME_TO_IMAGE_FORMAT.get(getOriginalFormatName())); }