c#圖片截取DEMO

來源:互聯網
上載者:User
DEMO

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Drawing.Imaging;namespace 圖片{    public partial class Form1 : Form    {        bool isDrag = false;        Rectangle theRectangle = new Rectangle(new Point(0, 0), new Size(0, 0));        Point startPoint, oldPoint;        private Graphics ig;        public Form1()        {            InitializeComponent();        }        private void button1_Click(object sender, EventArgs e)        {        }        private void button2_Click(object sender, EventArgs e)        {            openFileDialog1.Filter = "*.jpg,*.jpeg,*.bmp,*.gif,*.ico,*.png,*.tif,*.wmf|*.jpg;*.jpeg;*.bmp;*.gif;*.ico;*.png;*.tif;*.wmf";            openFileDialog1.ShowDialog();            Image myImage = System.Drawing.Image.FromFile(openFileDialog1.FileName);            pictureBox1.Image = myImage;        }        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)        {            if (e.Button == MouseButtons.Left)            {                //如果開始繪製,則開始記錄滑鼠位置                if ((isDrag = !isDrag) == true)                {                    startPoint = new Point(e.X, e.Y);                    oldPoint = new Point(e.X, e.Y);                }            }        }        private void pictureBox1_MouseUp(object sender, MouseEventArgs e)        {            isDrag = false;            ig = pictureBox1.CreateGraphics();            ig.DrawRectangle(new Pen(Color.Black, 1), startPoint.X, startPoint.Y, e.X - startPoint.X, e.Y - startPoint.Y);            theRectangle = new Rectangle(startPoint.X, startPoint.Y, e.X - startPoint.X, e.Y - startPoint.Y);        }        private void pictureBox1_MouseClick(object sender, MouseEventArgs e)        {             try            {                //Graphics graphics = this.CreateGraphics();                Bitmap bitmap = new Bitmap(pictureBox1.Image);                Bitmap cloneBitmap = bitmap.Clone(theRectangle, PixelFormat.DontCare);                pictureBox2.Image = (Image)cloneBitmap;                //graphics.DrawImage(cloneBitmap, e.X, e.Y);                Graphics g = pictureBox1.CreateGraphics();                SolidBrush myBrush = new SolidBrush(Color.Transparent);                g.FillRectangle(myBrush, theRectangle);            }            catch            { }        }    }}

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.