使用Modi OCR从图像中提取文本
本文关键字:提取 取文本 图像 Modi OCR 使用 | 更新日期: 2023-09-27 18:29:40
我计划在我的项目中使用OCR,并搜索了更多的OCR方法,但没有找到任何正确的方法。最后我听说了MODI
,我尝试了一下。但是它抛出以下错误:
由于以下错误,检索CLSID为{40942A6C-1520-4132-BDF8-BDC1F71F547B}的组件的COM类工厂失败:80040154
我正在使用Microsoft Office 2013
和visual studio 2012
。
我使用的代码如下:
private void button1_Click(object sender, EventArgs e)
{
CheckFileType(@"E:''");
}
public void CheckFileType(string directoryPath)
{
IEnumerator files = Directory.GetFiles(directoryPath).GetEnumerator();
while (files.MoveNext())
{
//get file extension
string fileExtension = Path.GetExtension(Convert.ToString(files.Current));
//get file name without extenstion
string fileName=Convert.ToString(files.Current).Replace(fileExtension,string.Empty);
//Check for JPG File Format
if (fileExtension == ".jpg" || fileExtension == ".JPG") // or // ImageFormat.Jpeg.ToString()
{
try
{
//OCR Operations ...
MODI.Document md = new MODI.Document();
md.Create(Convert.ToString(files.Current));
md.OCR(MODI.MiLANGUAGES.miLANG_ENGLISH, true, true);
MODI.Image image = (MODI.Image)md.Images[0];
//create text file with the same Image file name
FileStream createFile = new FileStream(fileName + ".txt",FileMode.CreateNew);
//save the image text in the text file
StreamWriter writeFile = new StreamWriter(createFile);
writeFile.Write(image.Layout.Text);
writeFile.Close();
}
catch (Exception)
{
MessageBox.Show("This Image hasn't a text or has a problem",
"OCR Notifications",
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
}
}
有人能帮我吗?这个问题是基于Microsoft Office版本还是我需要做任何更改?那有更好的OCR
dll
吗?谢谢
错误的原因是Microsoft Office Document Imaging(MODI)已与MS Office 2010一起停产。这是与Office 2013中的OneNote协作完成的。
即使我仍在寻找解决方案,或者是否有任何其他工具可以通过程序从图像中提取文本。如果您知道或有解决方案,请分享。