将ASW S3上的.tif图像转换为base64字符串C#
问题描述:
我有一个存储在AWS S3
上的带有路径的tif图像。由于某些浏览器不支持显示.tif
文件,所以我必须将其转换为base64
字符串。 在我的本地,它工作成功。但是,当我将我的网站部署到AWS时,生成的base64
字符串与我本地不同。所以,我无法显示。 这是我的代码:将ASW S3上的.tif图像转换为base64字符串C#
byte[] data = (new WebClient()).DownloadData(filePath);
using (var ms = new MemoryStream(data))
{
var image = Image.FromStream(ms);
image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
byte[] imageBytes = ms.ToArray();
string base64 = Convert.ToBase64String(imageBytes);
}
任何人都有这个问题的经验? 非常感谢!
答
我注意到你正在重复使用MemoryStream作为你的输出的MemoryStream。
我认为你应该使用一个单独的内存流image.Save()
+0
你是对的。它帮助我节省了很多时间。万分感谢。 –
下载实际上是否成功? S3对象的内容类型是否正确(image/tiff)? Jarmod, – jarmod
。是的,我可以下载tif文件成功。 S3对象的内容类型正确。 –