At this article we will see a code example how to draw shapes in Graphics Mill for .NET.
Drawing functionality of the Graphics Mill for .NET is presented by GdiGraphics class. You can draw outline and shape fill separately. The following shapes are supported:
The appearance of the outline of the shapes is managed by special object called pen. The filling of the shapes can be specified by the brush. You can read about it more detailed at the Pens and Brushes article.
The code below demonstrates the usage of these methods. This figure demonstrates output of this code.
Dim bitmap As New Aurigma.GraphicsMill.Bitmap( _ Aurigma.GraphicsMill.RgbColor.White, 185, 145, _ Aurigma.GraphicsMill.PixelFormat.Format24bppRgb) Dim graphics As Aurigma.GraphicsMill.Drawing.GdiGraphics = bitmap.GetGdiGraphics() 'Draw filled and outlined rectangle Dim pen As New Aurigma.GraphicsMill.Drawing.Pen(Aurigma.GraphicsMill.RgbColor.Red, 3) Dim brush As New Aurigma.GraphicsMill.Drawing.SolidBrush( _ Aurigma.GraphicsMill.RgbColor.FromRgb(&HDD, &HDD, &HFF)) graphics.FillRectangle(brush, 10, 10, 100, 60) graphics.DrawRectangle(pen, 10, 10, 100, 60) 'Draw filled but non-outlined ellipse brush.Color = Aurigma.GraphicsMill.RgbColor.Yellow graphics.FillEllipse(brush, 60, 40, 100, 80) 'Draw outlined but non-filled polygon pen.Color = Aurigma.GraphicsMill.RgbColor.Green pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot pen.Width = 1 Dim points As System.Drawing.Point() = { _ New System.Drawing.Point(20, 30), New System.Drawing.Point(50, 2), _ New System.Drawing.Point(180, 30), New System.Drawing.Point(80, 140)} graphics.DrawPolygon(pen, points)
Aurigma.GraphicsMill.Bitmap bitmap = new Aurigma.GraphicsMill.Bitmap( Aurigma.GraphicsMill.RgbColor.White, 185, 145, Aurigma.GraphicsMill.PixelFormat.Format24bppRgb); Aurigma.GraphicsMill.Drawing.GdiGraphics graphics = bitmap.GetGdiGraphics(); //Draw filled and outlined rectangle Aurigma.GraphicsMill.Drawing.Pen pen = new Aurigma.GraphicsMill.Drawing.Pen( Aurigma.GraphicsMill.RgbColor.Red, 3); Aurigma.GraphicsMill.Drawing.SolidBrush brush = new Aurigma.GraphicsMill.Drawing.SolidBrush( Aurigma.GraphicsMill.RgbColor.FromRgb(0xDD, 0xDD, 0xFF)); graphics.FillRectangle(brush, 10, 10, 100, 60); graphics.DrawRectangle(pen, 10, 10, 100, 60); //Draw filled but non-outlined ellipse brush.Color = Aurigma.GraphicsMill.RgbColor.Yellow; graphics.FillEllipse(brush, 60, 40, 100, 80); //Draw outlined but non-filled polygon pen.Color = Aurigma.GraphicsMill.RgbColor.Green; pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot; pen.Width = 2; System.Drawing.Point[] points = { new System.Drawing.Point(20, 30), new System.Drawing.Point(50, 2), new System.Drawing.Point(180, 30), new System.Drawing.Point(80, 140)}; graphics.DrawPolygon(pen, points);
Draw attention, these method are working in the same way as appropriate methods of the System.Drawing.Graphics class. The code example for System.Drawing.Graphics usage can be found below. However before you use it, we would recommend reading an article Comparison: GdiGraphics and System.Drawing.Graphics.
The output of this code is adduced here:
Dim bitmap As New Aurigma.GraphicsMill.Bitmap( _ Aurigma.GraphicsMill.RgbColor.White, 185, 145, _ Aurigma.GraphicsMill.PixelFormat.Format24bppRgb) Dim graphics As System.Drawing.Graphics = bitmap.GetGdiplusGraphics() graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias 'Draw filled and outlined rectangle Dim pen As New System.Drawing.Pen(System.Drawing.Color.Red, 3) Dim brush As New System.Drawing.SolidBrush(System.Drawing.Color.FromArgb(&HFFDDDDFF)) graphics.FillRectangle(brush, 10, 10, 100, 60) graphics.DrawRectangle(pen, 10, 10, 100, 60) 'Draw filled but non-outlined ellipse brush.Color = System.Drawing.Color.FromArgb(200, System.Drawing.Color.Yellow) graphics.FillEllipse(brush, 60, 40, 100, 80) 'Draw outlined but non-filled polygon pen.Color = System.Drawing.Color.FromArgb(150, System.Drawing.Color.Green) pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot pen.Width = 2 Dim points As System.Drawing.Point() = { _ New System.Drawing.Point(20, 30), New System.Drawing.Point(50, 2), _ New System.Drawing.Point(180, 30), New System.Drawing.Point(80, 140)} graphics.DrawPolygon(pen, points)
Aurigma.GraphicsMill.Bitmap bitmap = new Aurigma.GraphicsMill.Bitmap( Aurigma.GraphicsMill.RgbColor.White, 185, 145, Aurigma.GraphicsMill.PixelFormat.Format24bppRgb); System.Drawing.Graphics graphics = bitmap.GetGdiplusGraphics(); graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; //Draw filled and outlined rectangle System.Drawing.Pen pen = new System.Drawing.Pen(System.Drawing.Color.Red, 3); System.Drawing.SolidBrush brush = new System.Drawing.SolidBrush( System.Drawing.Color.FromArgb(0xFF, 0xDD, 0xDD, 0xFF)); graphics.FillRectangle(brush, 10, 10, 100, 60); graphics.DrawRectangle(pen, 10, 10, 100, 60); //Draw filled but non-outlined ellipse brush.Color = System.Drawing.Color.FromArgb(200, System.Drawing.Color.Yellow); graphics.FillEllipse(brush, 60, 40, 100, 80); //Draw outlined but non-filled polygon pen.Color = System.Drawing.Color.FromArgb(150, System.Drawing.Color.Green); pen.DashStyle = System.Drawing.Drawing2D.DashStyle.Dot; pen.Width = 2; System.Drawing.Point[] points = { new System.Drawing.Point(20, 30), new System.Drawing.Point(50, 2), new System.Drawing.Point(180, 30), new System.Drawing.Point(80, 140)}; graphics.DrawPolygon(pen, points);