最近项目需求,需要将Base64编码的图像转化为HObject,使用genImage1生成图像失败,请教各位大佬有无解决方案?
CBase64ToHobject base64;
int datalen(0);
DWORD dwritelen(0);
std::string strdcode = base64.Decode(strData.data(), strData.size(), datalen);
const char* a = strdcode.c_str();
char* b = new char[strdcode.length() + 1];
memset(b, 0, strdcode.length() + 1);
memcpy(b, a, strdcode.length());
unsigned char* c = (unsigned char*)b; // byte与 unsigned char*相同
for (int i = 0; i < strdcode.length(); i++)
{
std::cout << i << ":" << (int)(c[i]) << std::endl;
}
HObject img;
HTuple windowhandle;
GenImage1(&img, "byte", 377, 309, (Hlong)c);
OpenWindow(0, 0, 377, 309, 0, "visible", "", &windowhandle);
if (HDevWindowStack::IsOpen())
DispObj(img, HDevWindowStack::GetActive());
WaitSeconds(2); |