Convert image to text in .net

http://www.dotnetspider.com/resources/45094-Convert-image-text-net.aspx

This article is about Image to Text converter using MODI (Microsoft Office Document Imaging) adds programming features to the document scanning and viewing tools. We can easily convert scanned document to text.


What is MODI?
MODI (Microsoft Office Document Imaging) is library which contained in Microsoft office package use to extract text and layout information from scanned pages by using OCR (optical character recognition).

Adding MODI to Project?
Add reference to your project from COM -> Microsoft Office Document Imaging 11.0 Type Library.

Note: If you have installed Microsoft Office 2003 then MODI is installed by default for office 2007 you have to add from installation package. You have run package and add MODI .In office 2010 unfortunately MODI is removed by Microsoft. But you can get by installing Microsoft Office SharePoint Designer 2007.
To install refer given link
Click Here

After adding reference to project is more than your half your work done

1)Create a form and add text box and button to upload image.
2)You can design as your here I designed according to my requirement.
3)Take picture box to display image and text box to display text.
4)Change text box property of Multiline=true;
5)On Button upload on button_click event write the following code.

Code is Here :

        private void btnUpload_Click(object sender, EventArgs e)
        {
            OpenFileDialog op1 = new OpenFileDialog();

            op1.ShowDialog();
            txtUpload.Text = op1.FileName;
            MODI.Document DOC = new MODI.Document();
            StringBuilder str = new StringBuilder();
            string filename = txtUpload.Text;
            MODI.Word word = null;
            MODI.Image image = null;
            MODI.Layout layout = null;
          

            pictureBox1.ImageLocation = txtUpload.Text;
            DOC.Create(filename);
            DOC.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true);

            for (int i = 0; i < DOC.Images.Count; i++)
            {

                image = (MODI.Image)DOC.Images[i];
                layout = image.Layout;
                for (int j = 0; j < layout.Words.Count; j++)
                {

                    word = (MODI.Word)layout.Words[j];
                    str.Append(" "+word.Text);


                }
            }
            textBox1.Text = str.ToString();
            DOC.Close(false);
         
    }


and you can run your project and check result my output is like this.
Or You can check attachment I have attached project.


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 C# ASP.NET 中生成验证码可以通过以下步骤实现: 1. 在 ASPX 页面中添加一个 Image 控件,用于显示验证码图片: ```html <asp:Image ID="imgCaptcha" runat="server" /> ``` 2. 在 ASPX 页面中添加一个 Button 控件,用于刷新验证码: ```html <asp:Button ID="btnRefresh" runat="server" Text="刷新" OnClick="btnRefresh_Click" /> ``` 3. 在 ASPX 页面中添加一个 TextBox 控件,用于用户输入验证码: ```html <asp:TextBox ID="txtCaptcha" runat="server"></asp:TextBox> ``` 4. 在后台代码中生成验证码图片和验证码字符串: ```csharp protected void GenerateCaptcha() { // 生成随机验证码字符串 string captcha = GenerateRandomCode(); // 将验证码字符串存储到 Session 中,用于验证用户输入 Session["Captcha"] = captcha; // 生成验证码图片 Bitmap image = new Bitmap(200, 50); Graphics graphics = Graphics.FromImage(image); Font font = new Font("Arial", 20, FontStyle.Bold); Rectangle rect = new Rectangle(0, 0, image.Width, image.Height); Brush brush = new SolidBrush(Color.FromArgb(255, 0, 0, 0)); graphics.FillRectangle(brush, rect); brush = new SolidBrush(Color.FromArgb(255, 255, 255, 255)); graphics.DrawString(captcha, font, brush, 10, 10); MemoryStream stream = new MemoryStream(); image.Save(stream, ImageFormat.Png); // 将验证码图片显示在 Image 控件中 imgCaptcha.ImageUrl = "data:image/png;base64," + Convert.ToBase64String(stream.ToArray()); } ``` 5. 在后台代码中处理刷新按钮的点击事件,重新生成验证码: ```csharp protected void btnRefresh_Click(object sender, EventArgs e) { GenerateCaptcha(); } ``` 6. 在后台代码中处理用户提交表单的事件,比较用户输入的验证码和 Session 中存储的验证码是否一致: ```csharp protected void btnSubmit_Click(object sender, EventArgs e) { string captcha = Session["Captcha"] as string; if (txtCaptcha.Text == captcha) { // 验证码正确,继续处理表单提交 } else { // 验证码错误,提示用户重新输入 } } ``` 注意:为了增加验证码的安全性,应该在生成随机验证码字符串时使用随机数生成器,并且在生成验证码图片时使用随机字体和随机颜色,以防止恶意程序破解验证码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值