1. 程式人生 > >C# FrameWorkAPI 之 System.Drawing

C# FrameWorkAPI 之 System.Drawing

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Reflection;
using System.Threading;
using System.Drawing;

namespace DemoCSDN
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void ShowLineJoin(PaintEventArgs e)
        {
            //定義畫筆pen
            Pen skyBluePen1 = new Pen(Brushes.DeepSkyBlue) { Width = 8.0F };

            Pen skyBluePen2 = new Pen(Color.Red) { Width = 8.0F }; 

            Pen skyBluePen3 = new Pen(Brushes.DeepSkyBlue, 8.0F);

            Pen skyBluePen4 = new Pen(Color.Red, 8.0F);

            //利用從paint事件建立的e,傳進來後呼叫Graphics開始畫
            e.Graphics.DrawRectangle(skyBluePen1,
                new Rectangle(0, 0, 100, 100));
            e.Graphics.DrawLine(skyBluePen2, new Point(0, 0), new Point(10, 10));

            //畫完要釋放
            skyBluePen1.Dispose();
            skyBluePen2.Dispose();
            skyBluePen3.Dispose();
            skyBluePen4.Dispose();

            // Construct an Icon.
            Icon icon1 = new Icon(SystemIcons.Exclamation, 40, 40);
            // Call ToBitmap to convert it.
            Bitmap bmp = icon1.ToBitmap();
            // Draw the bitmap.
            e.Graphics.DrawImage(bmp, new Point(30, 30));
        }

        private void pictureBox1_Paint(object sender, PaintEventArgs e)
        {
            ShowLineJoin(e);
        }
        Bitmap image1;
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                // Retrieve the image.
                image1 = new Bitmap(@"C:\Documents and Settings\All Users\"
                    + @"Documents\My Music\music.bmp", true);

                int x, y;

                // Loop through the images pixels to reset color.
                for (x = 0; x < image1.Width; x++)
                {
                    for (y = 0; y < image1.Height; y++)
                    {
                        //處理圖片畫素點
                        Color pixelColor = image1.GetPixel(x, y);
                        Color newColor = Color.FromArgb(pixelColor.R, 0, 0);
                        image1.SetPixel(x, y, newColor);
                    }
                }
                // Set the PictureBox to display the image.
                pictureBox1.Image = image1;

            }
            catch (ArgumentException)
            {
                MessageBox.Show("There was an error." +
                    "Check the path to the image file.");
            }
        }
    }
}

控制元件:pictureBox1、button1