using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace Graphics_CS
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            #if DEBUG
                MinimizeBox = false;
            #else       
                MinimizeBox = true;
            #endif
        }

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Graphics g = e.Graphics;
            // Синее перо толщиной 1 пиксель
            Pen bluePen = new Pen(Color.Blue);
            // Красное перо толщиной 5 пикселей
            Pen redFatPen = new Pen(Color.Red, 5);
            g.DrawLine(bluePen, 10, 10, 230, 10);
            g.DrawLine(redFatPen, 10, 20, 230, 20);

            // Создаем кисть зеленого цвета
            SolidBrush myBrush = new SolidBrush(Color.Green);
            // Рисуем закрашенный круг
            g.FillEllipse(myBrush, 10, 30, 30, 30);
            // Меняем цвет кисти на желтый
            myBrush.Color = Color.Yellow;
            // Рисуем закрашенный прямоугольник
            g.FillRectangle(myBrush, 50, 30, 50, 25);

           
            // выбираем рисунок
            Image myImage = new Bitmap(@"\Windows\msn.bmp");
            // создаем текстурную кисть
            TextureBrush texture = new TextureBrush(myImage);
            // Рисуем эллипс, заполненный рисунком
            g.FillEllipse(texture, 10, 60, 120, 120);

            // красный цвет из названия цвета
            Color redColor = Color.Red;
            // красный цвет из компонентов RGB
            Color redColor2 = Color.FromArgb(255, 0, 0);
            // Выводим на экран две красные линии
            g.DrawLine(new Pen(redColor), 10, 190, 100, 190);
            g.DrawLine(new Pen(redColor2), 10, 195, 100, 195);

            Font myFont = new Font("Tahoma", 9, FontStyle.Italic);
            myBrush.Color = Color.Violet;
            g.DrawString("Мобильное устройство", myFont, myBrush, 14, 200);

            // Нарисуем ромб
            // Зададим массив точек
            Point[] arrPoint =
	        {
                new Point(150,50),
		        new Point(200,100),
		        new Point(150,150),
		        new Point(100,100),
		        new Point(150,50),
		    };

            g.DrawPolygon(bluePen, arrPoint);

            g.DrawImage(myImage, 10, 10);

            Bitmap myBMP = new Bitmap(@"\windows\banner.gif");
            Rectangle portion = new Rectangle(1, 1, 150, 25);
            g.DrawImage(myBMP, 20, 220, portion, GraphicsUnit.Pixel);
                         
            g.Dispose();
        }

        private void menuItemSave_Click(object sender, EventArgs e)
        {
            Bitmap JpgImage = new Bitmap(@"\Windows\msn.bmp");
            JpgImage.Save(@"\My documents\msn.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
        }
    }
}