我最近开始使用Magick++ (C++ ),目的是创建一个可以显示随机生成的图像的网站。我正在尝试编写一个CGI脚本,它将创建一个JPEG图像,设置其像素的颜色,然后将图像信息返回为Content-type: image/jpg。
通过阅读文档,我只找到将图像文件写入磁盘的功能。我没有看到像std::cout << Image或std::cout << Blob那样做我希望做的事情的人。
我的目标是能够在网页中显示脚本生成的图像,而不需要将映像写入磁盘。
我知道PerlMagick有一个显示功能,它可以做我想要做的事情--我想知道我是否可以对Magick++做同样的事情。
发布于 2015-06-06 17:00:06
我想你是在寻找blobs二进制大对象。基本上,您可以创建一个Image类型的映像和一个Blob类型的blob。您可以通过读取文件或生成随机数据来填充图像,然后将图像写入blob (对其进行编码),然后将其写入用户浏览器。
请原谅我没用的C/C++技能..。
Image image;
Blob blob;
// set type to JPEG
image.magick("JPEG");
// generate/read/fill image here
image.read("image.jpg");
// encode image as JPEG
image.write(&blob);
// now send MIME type to browser
std::cout << "Content-type: image/jpeg" << CRLF;
// ... followed by blob
write(1,(char*)blob.data(),blob.length());https://stackoverflow.com/questions/30684708
复制相似问题