Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment stocker wxImage dans la base de données, en utilisant C++ ?

wxWidgets ne fournit aucune API aux données de wxBitmap (parce que cela dépend de la plate-forme) mais wxImage utilise un format bien défini (et très simple) auquel vous pouvez accéder en utilisant son GetData() méthode comme mentionné ci-dessus. Notez simplement que vous devrez peut-être utiliser GetAlpha() également si vos images ont un canal alpha.

Cependant, ce n'est pas comme ça que je le ferais car les données seront énormes si tu fais comme ça. Bien que le compresser, comme également suggéré ci-dessus, soit possible, pourquoi s'embêter à le faire manuellement lorsque wxImage prend déjà en charge l'écriture d'image dans l'un des formats d'image standard. Créez simplement un wxMemoryOutputStream et passez-le à SaveFile() . Ensuite, accédez simplement au tampon de flux directement en utilisant GetOutputStreamBuffer()->GetBufferStart() et les fonctions associées.