使用imagemagick:
convert file.png data.h
给出类似的内容:
/*
data.h (PNM).
*/
static unsigned char
MagickImage[] =
{
0x50, 0x36, 0x0A, 0x23, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x20,
0x77, 0x69, 0x74, 0x68, 0x20, 0x47, 0x49, 0x4D, 0x50, 0x0A, 0x32, 0x37,
0x37, 0x20, 0x31, 0x36, 0x32, 0x0A, 0x32, 0x35, 0x35, 0x0A, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
....
为了与其他代码兼容,您可以使用fmemopen
“常规” FILE *
对象,也std::stringstream
可以使用iostream
。std::stringstream
但这并不是很好,您当然可以在可以使用迭代器的任何地方使用指针。
如果您将此参数与automake一起使用,请不要忘记适当地设置BUILT_SOURCES。
这样做的好处是:
- 您会收到文本,因此可以在版本控制中进行合理的修补
- 它是便携式的,并且在每个平台上都定义明确