Escribir archivos BMP con DataBuffer.TYPE_FLOAT o DataBuffer.TYPE_DOUBLE en Java

StackOverflow https://stackoverflow.com/questions/2530831

  •  22-09-2019
  •  | 
  •  

Pregunta

Yo tenía un problema de trabajar con las clases de imágenes en Java.

Estoy creando una imagen tamponada con DataBuffer.TYPE_DOUBLE. Todo esto funciona bien en la memoria (creo). Pero el problema comienza cuando trato de escribirlo usando ImageIO.write.

Al principio yo estaba recibiendo no es una excepción en absoluto y en su lugar sólo era conseguir un archivo de salida vacío para mis problemas ..

Después de un poco de hurgar en el código, me enteré de que el apoyo bmp escritor duerma escribir type_double tipo de archivos.

From: BMPImageWriterSpi.canEncodeImage:
        if (dataType < DataBuffer.TYPE_BYTE || dataType > DataBuffer.TYPE_INT)
        return false;

Así que mi pregunta es, ¿alguien tiene una forma de escribir a cabo ese tipo de imágenes en el disco? cualquier documentación o tutorial, o un enlace sería de gran ayuda.

Gracias, Albahaca Dsouza

¿Fue útil?

Solución

Dado que el formato BMP no utiliza ninguna representación de punto flotante, en un nivel alto no acaba de sentido utilizar datos de coma flotante para representar una imagen que se va a escribir como una BMP. Lo que realmente necesita para hacer eso? ¿Por qué no enteros?

El Javadoc para DataBuffer.TYPE_DOUBLE sugiere que no está destinado actualmente para su uso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top