使用Base 64字符串显示一个向下加载的图像

本文关键字:一个 加载 图像 Base 字符串 显示 使用 | 更新日期: 2023-09-27 18:24:01

我需要使用下载url显示一个图像。我使用下面的逻辑将其转换为一个64进制字符串。

HttpWebRequest fileReq = (HttpWebRequest)HttpWebRequest.Create(downloadUrl); 
HttpWebResponse fileResp = (HttpWebResponse)(fileReq.GetResponse()); 
fileResp.GetResponseStream().CopyTo(ms); 
byte[] byteArray = ms.ToArray(); 
if (byteArray != null) 
{ 
return Convert.ToBase64String(byteArray); 
}

正在尝试使用它来显示图像。我在"response.data"中正确地得到了Base64字符串

<img src="data:image/tiff;charset=utf-8;base64,' + response.data + '" />

尽管如此,我看到的只是一个破碎的画面。我缺了什么吗?

使用Base 64字符串显示一个向下加载的图像

我现在已经将tiff转换为jpeg,这很有效。遗憾的是,tiff在主要浏览器中不受支持

 if (byteArray != null) 
{ 
byte[] jpegBytes; 
using (MemoryStream inStream = new MemoryStream(byteArray)) 
using (MemoryStream outStream = new MemoryStream()) 
{ 
System.Drawing.Bitmap.FromStream(inStream).Save(outStream,     System.Drawing.Imaging.ImageFormat.Jpeg); 
jpegBytes = outStream.ToArray(); 
return Convert.ToBase64String(jpegBytes); 
} 
}