我有一个存储在MongoDB中的图像(png)文件作为二进制数据。我的MongoDB架构如下所示:
ctrl+something
小胡子代码如下所示:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
ImageSchema = new Schema (
{ title : String,
picture: { content: Buffer, contentType: String }
}
);
MongoDB中的数据如下所示,因为它太长而缩短了:
var template = "{{picture.content}} <h1>{{title}}</h1>";
var rendered = Mustache.render(template, imageObject);
$('#target').html(rendered);
以下是我使用multer将其存储到MongoDB中的方法:
"picture" : {
"contentType" : "image/png",
"content" : BinData(0,"iVBORw0KGgoAAAANSUhEUg ...")
}
将此二进制数据转换为图像的方法是什么,尤其是将其放入Mustache模板中进行显示?如果图像需要以其他方式保存以及如何使用Mustache更容易显示,请告诉我。
感谢。
答案 0 :(得分:0)
通过将二进制数据转换为URL,然后馈入<img>
标签的src,将二进制数据转换为图像-
var template="<img src={{{`data:image/png;base64,${picture.content}`}}}/> <h1>{{title}}</h1>";