显示Base64图像

本文关键字:图像 Base64 显示 | 更新日期: 2023-09-27 18:23:48

我将图像存储为Base64,但在显示它们时遇到问题。我使用的是ASP.NET,下面是代码的一部分:

int visitorId = int.Parse(Request.QueryString["id"]);
classes.Visitor visitor = new classes.Visitor(visitorId, PageExtension_CurrentUser.Community.Id);
StringBuilder sb = new StringBuilder();
sb.Append("<table>");
sb.Append(@"<tr><td colspan=""2""><div style=""width:320px; height:240px; border: 1px dotted #000;"">");
if (visitor.VisitorImage != "")
{
    sb.Append(@"<img style=""width:320px; height:240px;"" alt="" src=""data:image/jpeg;base64, " + visitor.VisitorImage + @""" />");
}
else
{
    sb.Append(@"No image");
}
sb.Append("</div></td></tr>");
sb.Append("<tr><td style='width:200px;'><b>Visitor Name</b></td><td>" + visitor.GetFullname() + "</td></tr>");
sb.Append("<tr><td><b>Company/Address</b></td><td>" + visitor.AddressOrCompany + "</td></tr>");

有趣的是:

  1. 显示了具有虚线边界的DIV,但是没有显示图像
  2. 剩下的没有打印出来
  3. 图像数据很好,我已经测试过了http://base64online.org/decode/我看到了我用来测试的图片

我假设这是数据,但为什么没有显示?有什么想法吗?

显示Base64图像

这行代码是错误的:

sb.Append(@"<img style=""width:320px; height:240px;"" alt="" src=""data:image/jpeg;base64, " + visitor.VisitorImage + @""" />");

应该是:

sb.Append(@"<img style=""width:320px; height:240px;"" alt="""" src=""data:image/jpeg;base64, " + visitor.VisitorImage + @""" />");