es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Obtener la imagen bufferedImage desde una URL utilizando sksamuel/scrimage.

Me gustaría preguntarte si estoy usando la forma correcta de guardar un archivo en memoria desde un escritor y convertirlo en BufferedImage, o si debería escribirlo en un flujo de salida y luego convertirlo en BufferedImage.

Enlace a la documentación: https://sksamuel.github.io/scrimage/io/

Mi código se ve así:

def getImage(url: URL, width: Int, height: Int): BufferedImage = {
    val writer = new PngWriter()
    val image = ImmutableImage.loader().fromStream(url.openStream()).fit(width, height)
    image.replaceTransparencyInPlace(Color.white)
    ImageIO.read(image.forWriter(writer).stream())
}
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Según la documentación proporcionada, parece que la forma correcta de guardar un archivo en memoria y convertirlo en un BufferedImage es usar el método forWriter en el objeto ImmutableImage y pasarle la clase de escritor correspondiente (en este caso, PngWriter) y luego llamar a stream() para obtener un InputStream. Esto luego se puede pasar a ImageIO.read() para obtener el BufferedImage.

    Por lo tanto, parece que el código proporcionado está utilizando el método correcto para lograr el resultado deseado.

Comments are closed.