1

Visual Studio で作成された Web ページに対して、C# のコード ビハインドで線を描画できることを検討しています。それらは単なる垂直線になりますが、他の変数に応じてサイズを変更できる必要があります。

以下のように、いくつかのコードがあります。

using System.Drawing;
using System.Drawing.Imaging;

public partial class SpareFields : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Bitmap objBitmap;
        Graphics objGraphics;
        objBitmap = new Bitmap(400, 440);
        objGraphics = Graphics.FromImage(objBitmap);
        objGraphics.Clear(Color.White);
        Pen p = new Pen(Color.Yellow, 0);

        Rectangle rect = new Rectangle(600, 1500, 601, 2000);
        objGraphics.DrawEllipse(p, rect);
        objBitmap.Save(Response.OutputStream, ImageFormat.Gif);
        //objBitmap.Save(Server.MapPath("x.jpg"), ImageFormat.Jpeg);

        objBitmap.Dispose();
        objGraphics.Dispose();
    }
}

等々。これはちょうど始まりに過ぎませPage_Loadん - そこには他にもたくさんのグラフィック以外のコードがあります。問題は、ページの残りの部分が無視され、グラフィックを描画しているだけであることです。

また、上記が楕円形であることはわかっています (基本的には、円グラフの描画に関する簡単なテストです)。線や非常に細い長方形に適応させるのは簡単です。

元のページの残りの部分を利用できるようにしながら、描画する方法はありますか?

4

2 に答える 2

1

SVGを使用するいくつかの線を描画するために、動的画像に使用しない理由はほとんどありませ ん。svg の大きな利点は、JS を介してページ/クライアントの画像を変更できることです。

しかし、本当にビットマップが必要な場合は、ダイナミック イメージについて議論している Web 上の記事がたくさんあります。Google で「msdn dynamic image asp.net」を検索すると、ソース付きの関連記事が多数表示されます。

于 2013-04-10T08:42:58.653 に答える
1

最も簡単な方法は、このページを 2 つに分割することです。

<img>1) あなたのページは、新しいページを指す属性を持つタグを含む html だけを出力しsrcます。2) その新しいページでは、その画像生成コードだけを使用します。

于 2013-04-10T08:17:38.910 に答える