如何从网络上获取带有标题的图像

本文关键字:标题 图像 获取 网络 | 更新日期: 2023-09-27 18:28:59

如何在c#中从url中获取位图图像并向其传递一些标头?(不是参数、标题)

我也找到了一个简单的解决方案,但我不明白为什么它是错误的,问题是:当我从服务器上获得byte[]时,我得到了带有很多问号的图像,这是我认为由于不同的文本编码而附加的,我如何修复代码,以便我能够成功地从c#中获得带有标题和位图可见的图像?

如何从网络上获取带有标题的图像

您必须将图像转换为base64编码的字符串,并将其传递给标头。

using (Image image = Image.FromFile(Path))
{                 
    using (MemoryStream m = new MemoryStream())
    {
        image.Save(m, image.RawFormat);
        byte[] imageBytes = m.ToArray();
        // Convert byte[] to Base64 String
        string base64String = Convert.ToBase64String(imageBytes);
        return base64String;
    }                  
}

然后在另一边,你可以解析它并将其转换回图像:

public Image LoadImage()
{
    //data:image/png;base64,
    byte[] bytes = Convert.FromBase64String(YOUR_BASE64_ENCODED_STRING);
    Image image;
    using (MemoryStream ms = new MemoryStream(bytes))
    {
        image = Image.FromStream(ms);
    }
    return image;
}