Graphicsを使って作図してみる。
C#で図を作成したい場合はSystem.Drawing.Graphicsを使用します。
Graphicsを使用するには「参照」にSystem.Drawingを追加する必要があります。
以下のサンプルコードはGraphicsを使用して図を作成し、PNG画像として保存するコードです。
先ず最初にImageオブジェクトを作成します。
このコードでは空のBitmapオブジェクトを作成しています。
Graphics.FromImageメソッドでImageオブジェクトからGraphicsオブジェクトを作成します。
このGraphicsオブジェクトに対して描画操作を行うことで作図することができます。
このサンプルコードでは、背景色をぬり、四角と文字を描画しています。
見ての通り、描画する際に使用するPenやBrush、Font等Disposableなクラスが多いのでリソースの開放漏れに注意してください。
最後に、bitmapのSaveメソッドを使用すれば画像ファイルとして保存できます。
次回から何回かに分けて図形や文字を描画する際の説明を行います。
---------------------------------------------------------------
2016/8/6修正
BitmapインスタンスがDisposeされていなかった点を修正。
using System; using System.Drawing; using System.Drawing.Imaging; using System.IO; namespace Graphics1 { class Program { static void Main(string[] args) { var path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Image.png"); using (var bitmap = new Bitmap(100, 100)) // Imageオブジェクトを用意 using (var graphics = Graphics.FromImage(bitmap)) // ImageからGraphicsオブジェクトを作成 using (var pen = new Pen(Color.Black, 2)) using (var bgBrush = Brushes.White) using (var brush = Brushes.Red) using (var font = new Font("メイリオ", 24)) { // 背景色 graphics.FillRectangle(bgBrush, graphics.VisibleClipBounds); // Graphicsに図形を描画する graphics.DrawRectangle(pen, 10, 10, 80, 80); // テキストも描画できる graphics.DrawString("Test", font, brush, 10, 10); // 画像ファイルとして保存する bitmap.Save(path, ImageFormat.Png); } } } }このサンプルコードを実行すると以下の画像が作られます。

スポンサーサイト