public static void write(BufferedImage outputImage, Output output, File outputFile) throws IOException { if (output == Output.JPG) { // Need to strip alpha; BufferedImage img = new BufferedImage(outputImage.getWidth(), outputImage.getHeight(), BufferedImage.TYPE_INT_RGB); Graphics2D g2d = img.createGraphics(); g2d.drawImage(outputImage, 0, 0, null); g2d.dispose(); outputImage = img; Iterator<javax.imageio.ImageWriter> itor = ImageIO.getImageWritersByFormatName("jpeg"); javax.imageio.ImageWriter writer = itor.next(); ImageWriteParam imageWriteParam = writer.getDefaultWriteParam(); imageWriteParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); imageWriteParam.setCompressionQuality(0.9f); FileImageOutputStream outputStream = new FileImageOutputStream(outputFile); writer.setOutput(outputStream); IIOImage image = new IIOImage(outputImage, null, null); writer.write(null, image, imageWriteParam); writer.dispose(); } else { ImageIO.write(outputImage, output.getFormat(), outputFile); } }
/** * Save a Chart as a JPEG file * * @param chart * @param fileName * @param quality - a float between 0 and 1 (1 = maximum quality) * @throws IOException */ public static void saveJPGWithQuality(Chart chart, String fileName, float quality) throws IOException { BufferedImage bufferedImage = getBufferedImage(chart); Iterator<ImageWriter> iter = ImageIO.getImageWritersByFormatName("jpeg"); ImageWriter writer = iter.next(); // instantiate an ImageWriteParam object with default compression options ImageWriteParam iwp = writer.getDefaultWriteParam(); iwp.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); iwp.setCompressionQuality(quality); File file = new File(fileName); FileImageOutputStream output = new FileImageOutputStream(file); try { writer.setOutput(output); IIOImage image = new IIOImage(bufferedImage, null, null); writer.write(null, image, iwp); writer.dispose(); } finally { output.close(); } }
new BufferedImage( (int) (chart.getWidth() * scaleFactor), (int) (chart.getHeight() * scaleFactor), BufferedImage.TYPE_INT_RGB); Graphics2D graphics2D = bufferedImage.createGraphics(); ImageIO.getImageWritersByFormatName(bitmapFormat.toString().toLowerCase()); if (writers.hasNext()) { ImageWriter writer = writers.next(); ImageWriteParam iwp = writer.getDefaultWriteParam(); IIOMetadata metadata = writer.getDefaultImageMetadata(typeSpecifier, iwp); if (metadata.isReadOnly() || !metadata.isStandardMetadataFormatSupported()) { throw new IllegalArgumentException( FileImageOutputStream output = new FileImageOutputStream(file); writer.setOutput(output); IIOImage image = new IIOImage(bufferedImage, null, metadata); try { writer.write(null, image, iwp); writer.dispose(); } finally { output.close();
}; master = new BufferedImage(imageAttr.get("imageWidth"), imageAttr.get("imageHeight"), BufferedImage.TYPE_INT_ARGB); Graphics2D g2d = master.createGraphics(); g2d.drawImage(image, imageAttr.get("imageLeftPosition"), imageAttr.get("imageTopPosition"), null); g2d.dispose(); ImageIO.write(frame, "png", new File("img" + i + ".png")); images.add(frame); output = new FileImageOutputStream(dest); writer = new GifSequenceWriter(output, images.get(0).getType(), delay * 10, true); imageWriteParam = gifWriter.getDefaultWriteParam(); ImageTypeSpecifier imageTypeSpecifier = ImageTypeSpecifier.createFromBufferedImageType(imageType); = gifWriter.getDefaultImageMetadata(imageTypeSpecifier, imageWriteParam); gifWriter.setOutput(outputStream); gifWriter.prepareWriteSequence(null);
BufferedImage source = ImageIO.read(originalImage); int owidth = source.getWidth(); int oheight = source.getHeight(); double ratio = (double) owidth / oheight; BufferedImage dest = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB); Image srcSized = source.getScaledInstance(w, h, Image.SCALE_SMOOTH); Graphics graphics = dest.getGraphics(); graphics.drawImage(srcSized, 0, 0, null); ImageWriter writer = ImageIO.getImageWritersByMIMEType(mimeType).next(); ImageWriteParam params = writer.getDefaultWriteParam(); FileImageOutputStream toFs = new FileImageOutputStream(to); writer.setOutput(toFs); IIOImage image = new IIOImage(dest, null, null); writer.write(null, image, params); toFs.flush(); toFs.close();
BufferedImage img = ImageIO.read(imgFile); if (img == null) { return false; int ih = img.getHeight(); int iw = img.getWidth(); int thumbH, thumbW; float scale; new BufferedImage(thumbW, thumbH, img.getType()); AffineTransform at = AffineTransform.getScaleInstance(scale, scale); ImageIO.getImageWritersBySuffix(suffix); if (! iwi.hasNext()) { return false; new FileImageOutputStream(thumbFile); thumbWriter.setOutput(thumbOut); thumbWriter.write(null, new IIOImage(thumb, null, null), iwp); thumbWriter.dispose(); thumbOut.close();
new File("tmp/").mkdirs(); File f = new File("tmp/fight_" + channel.getId() + ".gif"); ImageOutputStream output = new FileImageOutputStream(f); GifSequenceWriter writer = new GifSequenceWriter(output, frames[0].getImage().getType(), 100, false); for (int i = 0; i < frames.length; i++) { ImageFrame frame = frames[i]; GifPosition pos = positions[i]; Graphics2D g = (Graphics2D) frame.getImage().getGraphics(); if (pos != null && pos.x != -1) { g.drawImage(avatar, pos.x, pos.y, pos.x + pos.height, pos.y + pos.width, 0, 0, avatar.getWidth(), avatar.getHeight(), null);
double ratio = (double) sourceImage.getWidth()/sourceImage.getHeight(); if (width < 1) { width = (int) (height * ratio + 0.4); Image scaled = sourceImage.getScaledInstance(width, height, Image.SCALE_AREA_AVERAGING); BufferedImage bufferedScaled = new BufferedImage(scaled.getWidth(null), scaled.getHeight(null), BufferedImage.TYPE_INT_RGB); Graphics2D g2d = bufferedScaled.createGraphics(); try { writer = ImageIO.getImageWritersByFormatName("jpeg").next(); ImageWriteParam param = writer.getDefaultWriteParam(); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality(quality); output = new FileImageOutputStream(new File(destFile)); writer.setOutput(output); IIOImage iioImage = new IIOImage(image, null, null); writer.write(null, iioImage, param); } catch (IOException ex) { throw ex; output.close();
int desiredWidth = originalImage.getWidth(); // initialize with fallback if (mf.getType() == MediaFileType.FANART) { if (originalImage.getWidth() > 1000) { desiredWidth = 1000; if (((float) originalImage.getWidth()) / ((float) originalImage.getHeight()) > 1) { if (originalImage.getWidth() > 400) { imgWrtr = ImageIO.getImageWritersByFormatName("png").next(); imgWrtrPrm = imgWrtr.getDefaultWriteParam(); ColorConvertOp xformOp = new ColorConvertOp(null); xformOp.filter(scaledImage, rgb); imgWrtr = ImageIO.getImageWritersByFormatName("jpg").next(); imgWrtrPrm = imgWrtr.getDefaultWriteParam(); imgWrtrPrm.setCompressionMode(JPEGImageWriteParam.MODE_EXPLICIT); imgWrtrPrm.setCompressionQuality(0.80f); FileImageOutputStream output = new FileImageOutputStream(cachedFile.toFile()); imgWrtr.setOutput(output); IIOImage image = new IIOImage(scaledImage, null, null); imgWrtr.write(null, image, imgWrtrPrm); imgWrtr.dispose(); output.flush(); output.close(); scaledImage = null;
BufferedImage source = ImageIO.read(originalImage); BufferedImage dest = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Image croppedImage = source.getSubimage(x1, y1, width, height); Graphics graphics = dest.getGraphics(); graphics.setColor(Color.WHITE); graphics.fillRect(0, 0, width, height); graphics.drawImage(croppedImage, 0, 0, null); ImageWriter writer = ImageIO.getImageWritersByMIMEType(mimeType).next(); ImageWriteParam params = writer.getDefaultWriteParam(); try (FileImageOutputStream toFs = new FileImageOutputStream(to)) { writer.setOutput(toFs); IIOImage image = new IIOImage(dest, null, null); writer.write(null, image, params); toFs.flush(); writer.dispose();
public void createImage(String format, int style, float size, String out, Color bg, Color fg, boolean transparency) { TeXIcon icon = createTeXIcon(style, size); icon.setInsets(new Insets(1, 1, 1, 1)); int w = icon.getIconWidth(), h = icon.getIconHeight(); BufferedImage image = new BufferedImage(w, h, transparency ? BufferedImage.TYPE_INT_ARGB : BufferedImage.TYPE_INT_RGB); Graphics2D g2 = image.createGraphics(); if (bg != null && !transparency) { g2.setColor(bg); g2.fillRect(0, 0, w, h); } icon.setForeground(fg); icon.paintIcon(null, g2, 0, 0); try { FileImageOutputStream imout = new FileImageOutputStream(new File(out)); ImageIO.write(image, format, imout); imout.flush(); imout.close(); } catch (IOException ex) { System.err.println("I/O error : Cannot generate " + out); } g2.dispose(); }
final Image baseImg = ImageIO.read(mapFile); final int thumbWidth = (int) (baseImg.getWidth(null) * scale); final int thumbHeight = (int) (baseImg.getHeight(null) * scale); final BufferedImage thumbImage = new BufferedImage(thumbWidth, thumbHeight, BufferedImage.TYPE_INT_RGB); final Graphics2D graphics2D = thumbImage.createGraphics(); graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); graphics2D.drawImage(baseImg, 0, 0, thumbWidth, thumbHeight, null); try (ImageOutputStream out = new FileImageOutputStream(file)) { final ImageWriter encoder = ImageIO.getImageWritersByFormatName("JPEG").next(); final JPEGImageWriteParam param = new JPEGImageWriteParam(null); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionQuality((float) 1.0); encoder.setOutput(out); encoder.write(null, new IIOImage(thumbImage, null, null), param);
BufferedImage image = reader.read(i); if(img == null) { img = new BufferedImage(image.getWidth() + x, image.getHeight() + y, BufferedImage.TYPE_4BYTE_ABGR); Graphics2D g = img.createGraphics(); ImageUtils.setBestRenderHints(g); g.drawImage(image, x, y, null); int type = firstImage.getType(); ImageOutputStream output = new FileImageOutputStream(gifFile);
writer.setOutput(new FileImageOutputStream(new File("D:\\1.jpg"))); BufferedImage b1=buffered.getSubimage(0, 0, (buffered.getWidth()/2), buffered.getHeight()); writer.write(null, new IIOImage((RenderedImage) b1, null, null), jpegParams); BufferedImage b2=buffered.getSubimage(buffered.getWidth()/2, 0, buffered.getWidth()/2, buffered.getHeight()); writer1.setOutput(new FileImageOutputStream(new File("2.jpg"))); writer1.write(null, new IIOImage((RenderedImage) b2, null, null), jpegParams);
if (args.length > 1) { BufferedImage firstImage = ImageIO.read(new File(args[0])); new FileImageOutputStream(new File(args[args.length - 1])); new GifSequenceWriter(output, firstImage.getType(), false); BufferedImage nextImage = ImageIO.read(new File(args[i])); writer.writeToSequence(nextImage, 1);
private static void writeImage(final BufferedImage worldMapImage, final File worldMapImageFile) throws IOException { FileImageOutputStream fios = null; try { fios = new FileImageOutputStream(worldMapImageFile); ImageIO.write(worldMapImage, "JPEG", fios); } finally { if (fios != null) { fios.close(); } } }
@Override public void tagSingleAvatarFile(final File source, final File destination) throws IOException { final BufferedImage in = ImageIO.read(source); final FileImageOutputStream outputStream = new FileImageOutputStream(destination); write(in, outputStream); }
FileImageOutputStream stream = new FileImageOutputStream( file ); ImageIO.write(img, "png", stream); //NOI18N stream.close(); bImage.flush();
public static void saveImage(final String fileName, final BufferedImage image, ImageFormat imageFormat) { try { final File file = new File(fileName); final String extension = FileUtilities.getExtension(fileName); Iterator<ImageWriter> iter = null; if (canWriteFormat(extension)) { iter = ImageIO.getImageWritersByFormatName(extension); } else { iter = ImageIO.getImageWritersByFormatName(imageFormat.toString()); } final ImageWriter writer = iter.next(); final ImageWriteParam iwp = writer.getDefaultWriteParam(); file.getParentFile().mkdirs(); try (final FileImageOutputStream output = new FileImageOutputStream(file.getAbsoluteFile())) { writer.setOutput(output); final IIOImage outimage = new IIOImage(image, null, null); writer.write(null, outimage, iwp); writer.dispose(); } } catch (final IOException e) { log.log(Level.SEVERE, e.getMessage(), e); } }
BufferedImage bi = new BufferedImage(200, 100, BufferedImage.TYPE_BYTE_INDEXED); ImageWriter writer = ImageIO.getImageWritersByFormatName("bmp").next(); ImageWriteParam param = writer.getDefaultWriteParam(); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionType("BI_RLE8"); writer.setOutput(new FileImageOutputStream(new File("test.bmp"))); writer.write(null, new IIOImage(bi, null, null), param); writer.dispose();