Conversão de imagens em bytearray



  • Boa tarde.
    Estou em um projeto que preciso salvar imagens em um banco de dados mysql, tentei fazer isso usando 'QImage' mas encontrei problemas na hora de trazer as imagens de volta do banco de dados. Decidi tentar transformar as imagens em bytearray para salvar no banco, e fazer a conversão quando precisar exibi-las.
    É viável fazer esta conversão? Como posso fazer esta conversão? Tem uma forma mais fácil de armazenar as imagens?



  • Mostra como você fez.



  • @Leonardo
    //Recebe a imagem e grava na variável 'imeco1 do tipo' QImage
    QFile file (QFileDialog::getOpenFileName(this,tr("Abrir arquivo"), tr("diretorio"), tr("Imagens(*.jpg)")));
    imeco1.load(&file,"JPG");
    //

    //Tentativa de salvar a imagem na variável 'eco1' que é do tipo bytearray
    QBuffer buf(&eco1);
    buf.open(QIODevice::WriteOnly);
    imeco1.save(&buf, "JPG");
    //Essa parte não sei se está certa, achei um exemplo assim na net e tentei implementar

    //Tentativa de converter o bytearray em imagem, é aqui que está com erro e também não tenho certeza se esta implementação funcionaria
    QBuffer buf (&eco1);
    buf.open(QIODevice::ReadOnly);
    QImageReader leitor( &buf,"JPG");
    ECO1 = leitor.read();



  • @Leonardo

    Consegui Leonardo, a implementação está correta, eu tinha esquecido de incluir a biblioteca qimagereader, por isso dava erro na conversão. Agora está funcionando bonito =).

    Obrigado pela atenção.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.