0

プログラムで生成された図面を含む画像ファイルを実行すると、コンソールプログラムを作成したいと思います。最終的に、数値パラメーターを含む構成ファイルを読み取り、アルゴリズムでイメージを作成します。

fillRect()などの描画コマンドを使用して、HTML5CanvasとJavascriptで必要なものをすでに取得できます。

System.Drawingこれ、特に名前空間に関する(過度に)膨大な.NETドキュメントを見てきましたが、System.Windows.Mediaこれらのクラスを使用する方法は非常に多く、どこから始めればよいのかさえわかりません。

私がやろうとしていることの疑似コード(実際のクラス名ではありません!!!)の例は次のようになります:

RasterImage raster = new RasterImage(width, height);
context = raster.getContext();
context.fillColor = 'white';
context.DrawRectangle(x,y,w,h);
context.saveAsPng('result.png');

実際の解決策はこれよりもはるかに冗長になると思いますが、それが私が実行する必要のある現在のワークフローです。また、このクラスがWPF(コンソールプログラム)にあまり依存できない場合は興味深いですが、可能であれば、実際にはより一般的な描画クラスを使用します。前もって感謝します!

4

1 に答える 1

3

クラスとその側近を使用するSystem.Drawing.Bitmapと、次のように非常に簡単に行うことができます。

static void Main(string[] args) {

    int width = 512;
    int height = 512;

    int x, y, w, h;
    x = y = 10;
    w = h = 100;

    using (Bitmap bmp = new Bitmap(width, height)) {
        using (Graphics g = Graphics.FromImage(bmp)) {

            g.FillRectangle(
                brush: new SolidBrush(
                    color: Color.Blue
                ),
                rect: new Rectangle(x, y, w, h)
            );

            g.DrawRectangle(
                pen: new Pen(
                    color: Color.Black, 
                    width: 3
                ),
                rect: new Rectangle(x, y, w, h)
            );

            bmp.Save(@"D:\result.png", ImageFormat.Png);

        }
    }

}

アセンブリを参照し、次の句System.Drawingを追加する必要があります。using

using System.Drawing;
using System.Drawing.Imaging;
于 2013-03-02T14:24:00.330 に答える