我会尽力清楚......
我的项目构思如下:
我采用了几种我用C ++实现的压缩算法,之后我拿了一个文本文件并应用了我实现的压缩算法,然后对压缩文件应用了几种加密算法,现在我留下最后一步了将这些加密文件转换为任何格式的图像(我正在考虑png,因为它是最清晰的)。
我的问题是: 我怎么能将二进制流转换为png格式? 我知道图像会看起来像垃圾。 我希望将二进制流转换为png格式,以便将其视为图像 我正在使用C ++,希望有人可以帮助我
(我之前关闭的帖子) https://stackoverflow.com/questions/5773638/converting-a-text-file-to-any-format-of-images-png-etc-c
提前 Help19
答案 0 :(得分:2)
如果您真的必须将数据存储在PNG中,最好使用OpenCV之类的第三方库为您完成工作。 OpenCV将允许您存储数据并将其作为PNG或其支持的任何其他格式保存在磁盘上。
执行此操作的代码如下所示:
#include <cv.h>
#include <highgui.h>
IplImage* out_image = cvCreateImage(cvSize(width, height), IPL_DEPTH_8U, bits_pr_pixel);
char* buff = new char[width * height * bpp];
// then copy your data to this buff
out_image->imageData = buff;
if (!cvSaveImage("fake_picture.png", out_image))
{
std::cout << "ERROR: Failed cvSaveImage" << std::endl;
}
cvReleaseImage(&out_image);
上面的代码只是为了让您了解如何使用OpenCV完成所需的操作。
答案 1 :(得分:1)
答案 2 :(得分:1)