0

http://www.mysite.com/image.aspxHTML をレンダリングする代わりに、画像を読み込んで表示したいページがあります。

ページの ContentType を に設定しましたimage/png。コードは次のとおりです。

using (Bitmap image = new Bitmap("http://www.google.com/images/img.png"))
{
    using (MemoryStream ms = new MemoryStream())
    {
        image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
        ms.WriteTo(Response.OutputStream);
    }
}

しかし、次のようなエラーが表示されます。

URI 形式はサポートされていません。

外部画像を読み込んでページにレンダリングするにはどうすればよいですか?

4

1 に答える 1

4

URI を使用してビットマップを読み込むことはできません。コンピューターのローカル ファイルである必要があります。

Web から画像を読み込んでレンダリングする場合は、その特定のリソースに対して Web リクエストを送信し、そのバイトをストリームにレンダリングする必要があります。

別名

WebRequest webRequest = WebRequest.Create("http://www.google.com/images/img.png");
using(WebResponse response = webRequest.GetResponse())
{
    using(MemoryStream stream = new MemoryStream(response.GetResponseStream())
    {
         stream.WriteTo(Response.OutputStream);
    }
}
于 2012-06-19T21:31:19.113 に答える