C ++:将base64字符串转换为Image

时间:2011-12-06 17:09:30

标签: c++ image

有一些方法可以将base64字符串转换为图像;在Visual C ++中?我从一个url获取图像得到了一个图像,编码为base64所以,我需要把它取回来。

我真的迷失在这件事上;我正在使用Visual C ++ 2010。

到目前为止,我一直在挖掘GDI +,但我不知道它是否正确。

感谢。

2 个答案:

答案 0 :(得分:3)

转换为字节,将字节转换为位图,(可选)将bitblt位图转换为窗口。

How do I base64 encode (decode) in C?

How can I create an Image in GDI+ from a Base64-Encoded string in C++?

您需要知道结果字节是什么类型的图像。然后你需要找到一个可以理解它的算法,或者只是将字节保存为文件类型(如果它已经使用标题信息和所有内容构建)。

如果它只是一个位图(如MFC位图),如果您打算保存它,则需要一种方法将其转换为图像。如果您只是打算显示它并且它已经是位图,那么只需使用GDI方法。

答案 1 :(得分:0)

Boost是C ++中的一大堆库,可以在here中找到它的文档。

所以我们有Boost支持的编码和解码。

here中可以找到Boost Base64编码解码的更详细的实现。

另一个有用的库是Microsoft CPPRESTSDK,也称为Casablanca项目。在此之下,他们定义了一个utility::conversion名称空间,该名称空间处理开发API时可能遇到的所有不同类型的编码-解码。在from_base64 (const utility::string_t &str)中,可用于将给定的base64字符串解码为字节数组。