È QImage in grado di aprire e rendere pure immagini a 16 bit?
Domanda
Credo che il titolo spiega già quello che voglio sapere.
C'è un modo possibile per aprire e salvare le immagini con 16 bit con Qt? E non mi riferisco al 3 * 8 = 24 bit o 4 * 8 = 32 bit, ciò che è proprio la stessa come immagine a 8 bit puro, voglio dire puro a 16 bit per R, G e B.
Soluzione
Al contrario di quanto dice Patrice, ci sono 16 bit per componente in formato QImage
. Il massimo che può ottenere è QImage::Format_ARGB32
a 8 bit per componente. Anche se è stato utilizzato in modalità 8 bit indicizzati, le tabelle dei colori non supportano più di 8 bit per componente. Inoltre, la classe QImageIOHandler
lavora in termini di QImage
, quindi non è possibile creare un formato immagine personalizzato plug-in per lavorare con 16 bit per componente di colore, purtroppo.
Altri suggerimenti
È possibile utilizzare libpng (png ++) a tale scopo.
QImage :: Format non definire puro a 16 bit, ma può definire 10 bit.
QImage::Format_A2RGB30_Premultiplied
( http://doc.qt.io/qt-5/qimage.html), può utilizzare RGB 10 bit per canale (0 ... 1).
Ma se l'uso QImage::setPixel
ancora usano 8 bit per canale per definire pixel da QColor
.
Come altri già menzionato, non c'è formato con 16 bit per componente supportato in Qt per ora.
Tuttavia, v'è una richiesta aperta per implementare questo, con un cerotto attaccato: https: // bugreports .qt.io / browse / QTBUG-45858
Non so che cosa è lo stato di questo, e se otterrà integrato.