zoukankan      html  css  js  c++  java
  • 扭曲图片(验证码)的较正处理C#代码

    在很多的验证码图片中,作者会刻意将图片中的文字“扭曲”一下,如下变成斜体。这样就会增加程序识别的难度。作为挂机程序的编写者,自然要反其道而行之,比较有效的一种方法是将“扭曲”的过程反过来校正一下,如图。这样处理,就比较容易分割了。

    实现的代码如下:
     1        private void button2_Click(object sender, EventArgs e)
     2        {
     3            Bitmap curBitmap = new Bitmap(pictureBox1.Image.Width,pictureBox1.Image.Height);
     4            Graphics g = Graphics.FromImage(curBitmap);
     5            Matrix X = new Matrix();
     6            //  X.Rotate(30);
     7            X.Shear((float)0.166666666670);   //  2/12
     8            g.Transform = X;
     9            // Draw image
    10            //Rectangle cloneRect = GetPicValidByValue(128);  //Get Valid Pic Rectangle
    11            Rectangle cloneRect = new Rectangle(654012);
    12            Bitmap tmpBmp = ((Bitmap)pictureBox1.Image).Clone(cloneRect, pictureBox1.Image.PixelFormat);
    13            g.DrawImage(tmpBmp,
    14                new Rectangle(654012),
    15                 00, tmpBmp.Width,
    16                 tmpBmp.Height,
    17                 GraphicsUnit.Pixel);
    18            
    19            pictureBox2.Image=curBitmap ;
    20        }

    21
  • 相关阅读:
    Objective-C-使用NSMutableURLRequest发送POST请求,使用NSJSONSerialization解析JSON字符串
    js showModalDialog打开新的页面给原页面传值问题
    svn2git使用小记
    模拟等待事件row lock waits
    URAL 1994 The Emperor's plan 求组合数 大数用log+exp处理
    struts总结
    URAL 1992 CVS 链表
    android游戏物理引擎开发——粒子系统(三)
    状态模式与上机
    OpenCV——凸包
  • 原文地址:https://www.cnblogs.com/yuanbao/p/915497.html
Copyright © 2011-2022 走看看