C#检测图像上的文本并将其在位图中移动

时间:2019-02-25 14:49:32

标签: c# text bitmap

所以我在C#项目中遇到的问题是我想在图像中移动文本。问题是我似乎找不到一种方法来检测图像中的文本,更不用说在图像中移动该文本的特定行了。

有没有一种方法可以首先检测图像中存在的所有文本,并且一旦您知道图像中in的文本或位置,即可在图像中移动线条。

2 个答案:

答案 0 :(得分:1)

这是“光学字符识别”的“ OCR”。

使用Tesseract(您可以在NuGet上获得它)并执行类似的操作

    using tessnet2;  
    using System.Drawing;  
    using System.Drawing.Drawing2D;  
    using System.Drawing.Imaging; 

    // now add the following C# line in the code page  
    var image = new Bitmap(@ "Z:\NewProject\demo\image.bmp");  
    varocr = new Tesseract();  
    ocr.Init(@ "Z:\NewProject\How to use Tessnet2 library\C#\tessdata", "eng", false);  
    var result = ocr.DoOCR(image, Rectangle.Empty);  
    foreach(tessnet2.Word word in result)  
    {  
        Console.writeline(word.text);  
    } 

我希望它会有所帮助。

答案 1 :(得分:0)

我个人做到了,而且奏效了。 (我使用了IronTCR

var image = new Bitmap(@"urfile.png");
IronTesseract varocr = new IronTesseract();
varocr.Language = OcrLanguage.English;
var mytext = varocr.Read(image);
Console.WriteLine(mytext.Text);