将 QImage 从 c++ 客户端发送到 python 服务器

Send QImage from c++ client to python server

本文关键字:python 服务器 客户端 QImage c++      更新时间:2023-10-16

c++客户端有QImage,必须通过tcp套接字发送到python服务器,并在那里以jpeg格式保存。服务器不使用 qt。你能解释一下如何正确地做到这一点吗?如何将数据从 QImage 写入套接字,以及如何在 python 中读取它以供以后保存? Q法师有点不清楚。

一种选择是将QIMage转换为base64数据,您可以稍后在python端对此进行反序列化:

在 C++ 端

QByteArray byteArray;
QBuffer buffer(&byteArray);
image.save(&buffer, "PNG"); // writes the image in PNG format inside the buffer
QString iconBase64 = QString::fromLatin1(byteArray.toBase64().data());

在 Python 端:

# For both Python 2.7 and Python 3.x
import base64
with open("imageToSave.png", "wb") as fh:
fh.write(base64.decodebytes(img_data))