我试图创建一个简单的应用程序,从屏幕上的一个区域读取文本。
我设法用Tesseract和Ocr做到了这一点,但没有问题,只是从一个文件开始。
这是我的代码:
using (var bm = new Bitmap(680, 280))
{
using (var gr = Graphics.FromImage(bm))
{
gr.CopyFromScreen(-1355, 430, 0, 0, bm.Size);
bm.Save(@"D:\test2.png", System.Drawing.Imaging.ImageFormat.Png);
// The image is saved in a file
// If required, the image can be converted to bitmap
Bitmap myBitmap = new Bitmap(bm.Width, bm.Height, gr);
// Get the text now
var Ocr = new IronTesseract
{
Language = OcrLanguage.French
};
using (var Input = new OcrInput())
{
Input.AddImage(@"D:\test2.png");
OcrResult Result = Ocr.Read(Input);
MessageBox.Show(Result.Text);
}
}
}
它工作得很好,但我想在不保存图像的情况下完成它。
我找不到任何办法做那样的事
using (var Input = new OcrInput())
{
Input.AddImage(myBitmap);
OcrResult Result = Ocr.Read(Input);
MessageBox.Show(Result.Text);
}
我只知道如何从图像中读取文本
文件
.
如果没有文件,只使用位图变量,我怎么能做到这一点?