2011-07-19 18 views

Respuesta

11

no probé a mí mismo, pero si QML es compatible con el esquema de URI de datos (http://en.wikipedia.org/wiki/Data_URI_scheme), prueba

Image { 
    source: "data:image/png;base64," + model.imageData 
} 
+0

Lo intenté, funciona. ¡Esta podría ser la mejor y más breve solución! – hiddenbit

+0

muchas gracias, funciona genial y muy simple –

0

Implementaré un QDeclarativeImageProvider personalizado, que crea una imagen a partir de los datos codificados. entonces usted puede hacer algo como esto en su delegado:

// ... 

Image { 
    source: "image://encodedimage/" + model.imageData 
} 

// ... 

Tenga una mirada en this example, podría ser un punto de partida para su aplicación.

Si la imagen es codificada en base64, a continuación, puede crear una imagen de esa manera (no probado):

QByteArray ba = QByteArray::fromBase64(imageDataString.toAscii()); 
QImage image = QImage::fromData(ba, "PNG");