私のコードでは、c# と ASP.NET を使用してビットマップを動的に作成します。ASPイメージコントロールに表示する必要があります。ハンドラーを使用せずにそれを行う方法はありますか?
23492 次
1 に答える
25
ashx ハンドラーを使用すると、すべてのブラウザーで機能し、出力画像をクライアントにキャッシュできるため、より適切です。
ただし、それを行う必要がある場合は、<img>
次のようにタグを使用して画像を直接インラインで表示できます。
<img src="data:image/gif;base64,<YOUR BASE64 DATA>" width="100" height="100"/>
ASPX:
<img runat="server" id="imgCtrl" />
CS:
MemoryStream ms = new MemoryStream();
bitmap.Save(ms, ImageFormat.Gif);
var base64Data = Convert.ToBase64String(ms.ToArray());
imgCtrl.Src = "data:image/gif;base64," + base64Data;
はい、ビットマップを直接書き込むこともできますが、Web には圧縮形式 (JPEG、GIF) の方が適しています。
注:インライン イメージは、古いブラウザーでは機能しません。IE の一部のバージョンには、最大 32KB のサイズの制限がありました。
于 2013-02-06T04:08:55.037 に答える