我从c ++文件构建JS程序(带有emscripten),生成一个png文件。
该程序在html文件中加载并执行。
现在我想在这个html文件中显示创建的png文件。但是Emscripten有一个模拟的沙盒文件系统,所以我的png文件是在这个文件系统中编写的。
如何检索此文件以显示它?
答案 0 :(得分:1)
您可以通过File System API脚本来访问它。
假设您在C ++中有一个函数,该函数将返回生成的PNG文件的路径,如下所示:
std::string processImage()
{
std::string filename = "my.png";
// open and write to your file
return filename;
}
在您的html中,添加一些js以读取文件,将其转换为blob,然后转换为对象URL:
const filename = Module.processImage(); // Call your C++ function
const blob = new Blob([FS.readFile(filename)], {'type': 'image/png'});
const url = URL.createObjectURL(blob);
// You can use this url as the src attribute of an img element