Html 在 .aspx 页面上将字节显示为图像
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/3431095/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Display bytes as images on an .aspx page
提问by BreakHead
I'm using a database to store clients' images as bytes. How can I render these images on an .aspx page?
我正在使用数据库将客户的图像存储为字节。如何在 .aspx 页面上呈现这些图像?
回答by ankitjaininfo
Two solutions.
两种解决方案。
Build a handler page. That takes an ImageID/RowID as GET parameter and returns data with mimetype image/jpeg or image/png.
Use DATA uri scheme as explained on wikipedia.
<img src="data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0 vr4MkhoXe0rZigAAAABJRU5ErkJggg==" alt="Red dot" />
构建处理程序页面。这需要一个 ImageID/RowID 作为 GET 参数并返回带有 mimetype image/jpeg 或 image/png 的数据。
使用维基百科上解释的 DATA uri 方案。
<IMG SRC = “数据:图像/ PNG; BASE64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs + 9AAAABGdBTUEAALGP C / xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV + IA AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq CH9 // q1uH4TLzw4d6 + ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0 vr4MkhoXe0rZigAAAABJRU5ErkJggg ==” ALT = “红点”/>
回答by David
Instructions can be found here: http://www.dotnetcurry.com/ShowArticle.aspx?ID=129&AspxAutoDetectCookieSupport=1
说明可以在这里找到:http: //www.dotnetcurry.com/ShowArticle.aspx?ID=129& AspxAutoDetectCookieSupport=1
in step 4, but the whole article is worth a read.
在第 4 步,但整篇文章值得一读。
回答by VDWWD
This can be done easily by converting the Byte Array to a Base64 image.
这可以通过将字节数组转换为 Base64 图像来轻松完成。
public string GetImageAsBase64String(byte[] bin)
{
if (bin != null)
{
return "<img src=\"data:image/jpeg;base64," + Convert.ToBase64String(bin) + "\">";
}
else
{
return null;
}
}
//usage, for demo purposes an uploaded image from a FileUpload Control
Label1.Text = GetImageAsBase64String(FileUpload1.FileBytes);