如何从带有标题的Web上获取图像?

时间:2016-01-03 17:41:41

标签: c# image windows-phone-8.1 windows-phone

如何从网址获取c#图像作为bitmapimage并传递给它一些标题? (不是参数,标题)

我也发现了一个简单的解决方案,但我无法理解为什么它是错的,问题是: 当我从服务器获得byte []时,我得到的图像有很多问号,这附加我认为因为不同的文本编码,我如何修复代码,以便我可以成功从c#头部和可见的图像到位图?

1 个答案:

答案 0 :(得分:0)

您必须将图像转换为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;
}