viernes, 20 de marzo de 2015

Cargar imágenes en memoria ram Qt (QImageReader)

Cuando queremos hacer uso intensivo y repetitivo de imágenes no es recomendable leer de disco cada vez que se valla a usar. La solución ideal es guardar la imagen en memoria ram y luego usarla cuando se requiera. Para ello podemos usar la clase QImageReader: 

// Ejemplo:
    QImageReader reader;
    reader.setFileName("imagen.jpg");
    QSize imageSize = reader.size();
    imageSize.scale(ui->label->size(), Qt::KeepAspectRatio);
    reader.setScaledSize(imageSize);
    QImage image = reader.read();
    QPixmap * pixmap = new QPixmap(QPixmap::fromImage(image));    

    label->setPixmap(pixmap);

Ahora cada vez que se quiera usar imagen.jpg no se leerá de disco sino que se buscara directamente de memoria lo cual repercute directamente en el rendimiento de la aplicación.

No hay comentarios:

Publicar un comentario