在英雄卡中使用本地存储的图像

时间:2017-07-11 17:41:51

标签: node.js botframework

我正在尝试将位于项目目录中的图像用作我的英雄卡中的图像。这似乎不起作用。是否只能从URL向英雄卡添加图像?感谢

更新的解决方案:

var image64 = new Buffer(fs.readFileSync(<image path>).toString("base64");
var card = new builder.HeroCard(session)
             .images([builder.CardImage.create(session, "data:image/jpeg;base64,"+image64)]);

1 个答案:

答案 0 :(得分:4)

将图像作为URL发送不是唯一的方法。您也可以使用base64编码发送它们:

        byte[] imagedata = {image}
        var image64 = "data:image/jpeg;base64," + Convert.ToBase64String(imagedata);

        reply.Attachments.Add(new Attachment()
        {
            ContentUrl = image64,
            ContentType = "image/jpeg",
        });