所以我在C#项目中遇到的问题是我想在图像中移动文本。问题是我似乎找不到一种方法来检测图像中的文本,更不用说在图像中移动该文本的特定行了。
有没有一种方法可以首先检测图像中存在的所有文本,并且一旦您知道图像中in的文本或位置,即可在图像中移动线条。
答案 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);