如何用MagickWand写入缓冲区(unsigned char *)?
目前我生成一个图像并将其保存到文件中,但我需要它在内存中:
MagickNewImage( wand, 640, 480, p_wand );
MagickWriteImage( wand, "test.jpg" );
答案 0 :(得分:1)
根据文档,有一个函数MagickGetImageBlob
返回unsigned char *
,这似乎是你在寻找的东西。其确切的文件是
MagickGetImageBlob()
实现直接到内存图像格式。它将图像作为blob(内存中的格式化“文件”)及其长度返回,从图像序列中的当前位置开始。使用MagickSetImageFormat()
设置要写入blob的格式(GIF,JPEG,PNG等)。
请注意,这确实需要您使用MagickSetImageFormat
设置格式,但总体而言,这似乎是您所寻找的最接近的内容。