Scrivere fuori file BMP con DataBuffer.TYPE_FLOAT o DataBuffer.TYPE_DOUBLE in java

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

  •  22-09-2019
  •  | 
  •  

Domanda

Ho avuto un problema a lavorare con le classi di immagine in java.

Sto creando un'immagine tamponata con DataBuffer.TYPE_DOUBLE. Tutto questo funziona bene in memoria (credo). Ma il problema inizia quando provo a scrivere utilizzando ImageIO.write.

Inizialmente mi è stato sempre non fa eccezione a tutti e invece è stato solo ottenere un file di output vuoto per i miei guai ..

Dopo un po 'di rovistando nel codice, ho scoperto che il supporto scrittore doesnt bmp scrittura tipo type_double di file.

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

Quindi la mia domanda è, qualcuno ha un modo di scrivere fuori quel tipo di immagini su disco? qualsiasi documentazione o tutorial, o un link sarebbe utile.

Grazie, Basil Dsouza

È stato utile?

Soluzione

Dato che il formato BMP non usa alcuna dichiarazione in virgola mobile, a un livello elevato ma non abbastanza senso utilizzare dati a virgola mobile per rappresentare un'immagine che si scrive come BMP. Avete veramente bisogno di farlo? Perché non interi?

I href="http://java.sun.com/javase/6/docs/api/java/awt/image/DataBuffer.html#TYPE_DOUBLE" per DataBuffer.TYPE_DOUBLE suggerisce che non è attualmente destinato all'uso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top