write imageio formatname example create java png jpeg image-transcoding

example - java imageio write formatname



Transcodificación de imágenes(JPEG a PNG) con Java (4)

En mi aplicación Java, me gustaría descargar un archivo JPEG, transferirlo a un archivo PNG y hacer algo con los bytes resultantes.

Estoy casi seguro de recordar que una biblioteca para hacer esto existe, no recuerdo su nombre.


javax.imageio debería ser suficiente. Coloque su JPEG en BufferedImage, luego guárdelo con:

File file = new File("newimage.png"); ImageIO.write(myJpegImage, "png", file);


ImageIO se puede utilizar para cargar archivos JPEG y guardar archivos PNG (también en ByteArrayOutputStream si no desea escribir en un archivo).


Esto es lo que terminé haciendo, estaba pensando demasiado fuera de la caja cuando hice la pregunta ...

// these are the imports needed import java.awt.image.BufferedImage; import java.io.File; import javax.imageio.ImageIO; import java.io.ByteArrayOutputStream; // read a jpeg from a inputFile BufferedImage bufferedImage = ImageIO.read(new File(inputFile)); // write the bufferedImage back to outputFile ImageIO.write(bufferedImage, "png", new File(outputFile)); // this writes the bufferedImage into a byte array called resultingBytes ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream(); ImageIO.write(bufferedImage, "png", byteArrayOut); byte[] resultingBytes = byteArrayOut.toByteArray();


BufferedImage bufferGambar; try { bufferGambar = ImageIO.read(new File("ImagePNG.png")); // pkai type INT karna bertipe integer RGB bufferimage BufferedImage newBufferGambar = new BufferedImage(bufferGambar.getWidth(), bufferGambar.getHeight(), BufferedImage.TYPE_INT_RGB); newBufferGambar.createGraphics().drawImage(bufferGambar, 0, 0, Color.white, null); ImageIO.write(newBufferGambar, "jpg", new File("Create file JPEG.jpg")); JOptionPane.showMessageDialog(null, "Convert to JPG succes YES"); } catch(Exception e) { JOptionPane.showMessageDialog(null, e); }