示例#1
0
        void DetectEdge()
        {
            if (this.pictureBox_clip.Image == null)
            {
                return;
            }

            double    angle = 0;
            Rectangle rect;

            using (Bitmap bitmap = new Bitmap(this.pictureBox_clip.Image))
            {
                // this.pictureBox1.Image = ImageUtil.AforgeAutoCrop(bitmap);
                DetectBorderParam param = new DetectBorderParam(bitmap);

                bool bRet = AForgeImageUtil.GetSkewParam(bitmap,
                                                         param,
                                                         out angle,
                                                         out rect);
                if (bRet == false)
                {
                    MessageBox.Show(this, "fail");
                    return;
                }
            }

#if NO
            using (Bitmap bitmap = new Bitmap(this.pictureBox1.Image))
            {
                this.pictureBox1.Image = ImageUtil.Apply(bitmap,
                                                         angle,
                                                         rect);
            }
#endif

            List <Point> points = this.pictureBox_clip.ToPoints((float)angle, rect);
            this.pictureBox_clip.SetPoints(points);
        }