ImageWriter jpgWriter = ImageIO.getImageWritersByFormatName("jpg").next(); ImageWriteParam jpgWriteParam = jpgWriter.getDefaultWriteParam(); jpgWriteParam.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); jpgWriteParam.setCompressionQuality(0.7f); ImageOutputStream outputStream = createOutputStream(); // For example implementations see below jpgWriter.setOutput(outputStream); IIOImage outputImage = new IIOImage(image, null, null); jpgWriter.write(null, outputImage, jpgWriteParam); jpgWriter.dispose();
// Get a writer for JPEG. ImageWriter iw = ImageIO.getImageWritersByFormatName("jpeg").next(); iw.setOutput(new FileImageOutputStream(outputFile)); // Set the compression quality to 0.9f. ImageWriteParam iwParam = iw.getDefaultWriteParam(); iwParam.setCompressionQuality(0.9f); // Write image iw.write(null, new IIOImage(imageToWrite, null, null), iwParam);
final ImageWriter writer = ImageIO.getImageWritersByFormatName("jpg").next(); // specifies where the jpg image has to be written writer.setOutput(new FileImageOutputStream( new File(folder.toString() + "/" + filename + ".jpg"))); // writes the file with given compression level // from your JPEGImageWriteParam instance writer.write(null, new IIOImage(capture, null, null), jpegParams);
try (ImageOutputStream out = ImageIO.createImageOutputStream(new File(args[firstArg++]))) { ImageWriter writer = new ICNSImageWriter(null); writer.setOutput(out); ImageWriteParam param = writer.getDefaultWriteParam(); ImageReader reader = readers.next(); reader.setInput(input); for (int j = 0; j < reader.getNumImages(true); j++) { writer.dispose();
/** * create a gif animation producer * @param loops - number of loops for the animated images. -1 = no loops; 0 = indefinitely loops; else: number of loops */ public AnimationGIF(int loops) { this.counter = 0; this.loops = loops; this.ios = null; this.writer = null; this.baos = new ByteArrayOutputStream(); Iterator<ImageWriter> writerIterator = ImageIO.getImageWritersByFormatName("GIF"); this.writer = writerIterator.next(); // com.sun.media.imageioimpl.plugins.gif.GIFImageWriter, com.sun.imageio.plugins.gif.GIFImageWriter this.ios = new MemoryCacheImageOutputStream(baos); this.writer.setOutput(ios); this.iwp = writer.getDefaultWriteParam(); }
public static void main(String[] pArgs) throws IOException { System.out.print("Reading image.. "); BufferedImage image = ImageIO.read(new File(pArgs[0])); System.out.println("image read"); System.out.println("image: " + image); ImageWriter writer = new PICTImageWriter(null); ImageOutputStream stream = ImageIO.createImageOutputStream(new File(pArgs[1])); writer.setOutput(stream); writer.write(image); stream.close(); } }
@Test(expected = IllegalStateException.class) public void testWriteSequenceNotStarted() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) ImageWriter writer = createImageWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); BufferedImage image = new BufferedImage(32, 32, BufferedImage.TYPE_INT_ARGB); writer.writeToSequence(new IIOImage(image, null, null), writer.getDefaultWriteParam()); } finally { writer.dispose(); } }
@Test(expected = IllegalStateException.class) public void testEndSequenceNotStarted() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) ImageWriter writer = createImageWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); writer.endWriteSequence(); } finally { writer.dispose(); } }
@Test public void testSetOutput() throws IOException { // Should just pass with no exceptions ImageWriter writer = createImageWriter(); assertNotNull(writer); writer.setOutput(ImageIO.createImageOutputStream(new ByteArrayOutputStream())); }
try { ImageOutputStream ios = ImageIO.createImageOutputStream(var7); Iterator<ImageWriter> iter = ImageIO.getImageWritersByFormatName("jpeg"); ImageWriter writer = iter.next(); ImageWriteParam iwp = writer.getDefaultWriteParam(); iwp.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); iwp.setCompressionQuality(0.85f); writer.setOutput(ios); writer.write(null, new IIOImage(var6,null,null),iwp); writer.dispose(); //ImageIO.write(var6, "jpg", var7); }
try (ImageOutputStream out = ImageIO.createImageOutputStream(new File(args[firstArg++]))) { ImageWriter writer = new ICOImageWriter(null); writer.setOutput(out); ImageWriteParam param = writer.getDefaultWriteParam(); param.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); param.setCompressionType(pngCompression ? "BI_PNG" : "BI_RGB"); ImageReader reader = readers.next(); reader.setInput(input); for (int j = 0; j < reader.getNumImages(true); j++) { writer.dispose();
public static void main(String[] args) throws IOException { File input = new File(args[0]); File output = new File(input.getParentFile(), input.getName().replace('.', '_') + ".ppm"); BufferedImage image = ImageIO.read(input); if (image == null) { System.err.println("input Image == null"); System.exit(-1); } System.out.println("image: " + image); ImageWriter writer = new PNMImageWriterSpi().createWriterInstance(); if (!output.exists()) { writer.setOutput(ImageIO.createImageOutputStream(output)); writer.write(image); } else { System.err.println("Output file " + output + " already exists."); System.exit(-1); } } }
@Test public void testWriteSequence() throws IOException { ImageWriter writer = createImageWriter(); ByteArrayOutputStream output = new ByteArrayOutputStream(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(output)) { writer.setOutput(stream); writer.prepareWriteSequence(null); for (RenderedImage image : getTestData()) { IIOImage iioImage = new IIOImage(image, null, null); writer.writeToSequence(iioImage, writer.getDefaultWriteParam()); } writer.endWriteSequence(); } finally { writer.dispose(); } } }
ImageWriter writer = ImageIO.getImageWritersByFormatName("png").next(); ImageWriteParam writeParam = writer.getDefaultWriteParam(); ImageTypeSpecifier typeSpecifier = ImageTypeSpecifier.createFromBufferedImageType(BufferedImage.TYPE_INT_RGB); writer.setOutput(stream); writer.write(metadata, new IIOImage(buffImg, null, metadata), writeParam); stream.close();
@Test(expected = IllegalStateException.class) public void testPrepareSequenceAlreadyStarted() throws IOException { // ICNS only supports sizes in multiples of 2 (16, 32, 64, ..., 1024 + 48 and 96) ImageWriter writer = createImageWriter(); try (ImageOutputStream stream = ImageIO.createImageOutputStream(new ByteArrayOutputStream())) { writer.setOutput(stream); writer.prepareWriteSequence(null); writer.prepareWriteSequence(null); } finally { writer.dispose(); } }
public byte[] writeImageToBytes(Image image, float quality) throws Exception { BufferedImage bi; if (image instanceof BufferedImage && ((BufferedImage) image).getType() == BufferedImage.TYPE_INT_RGB) { bi = (BufferedImage) image; } else { bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); Graphics2D g = bi.createGraphics(); g.drawImage(image, 0, 0, width, height, null); } ByteArrayOutputStream baos = new ByteArrayOutputStream(); ImageWriter imgWrtr = ImageIO.getImageWritersByFormatName("jpg").next(); ImageOutputStream imgOutStrm = ImageIO.createImageOutputStream(baos); imgWrtr.setOutput(imgOutStrm); ImageWriteParam jpgWrtPrm = imgWrtr.getDefaultWriteParam(); jpgWrtPrm.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); jpgWrtPrm.setCompressionQuality(quality); imgWrtr.write(null, new IIOImage(bi, null, null), jpgWrtPrm); imgOutStrm.close(); return baos.toByteArray(); } }
writer.setOutput(ImageIO.createImageOutputStream(new File(pArgs[1]))); writer.write(image);
ImageWriteParam writeParam = writer.getDefaultWriteParam(); ImageTypeSpecifier typeSpecifier = ImageTypeSpecifier.createFromBufferedImageType(BufferedImage.TYPE_INT_RGB); IIOMetadata metadata = writer.getDefaultImageMetadata(typeSpecifier, writeParam); writer.setOutput(stream); writer.write(metadata, new IIOImage(gridImage, null, metadata), writeParam); } finally { stream.close();