【发布时间】:2022-01-17 00:49:59
【问题描述】:
我目前正在尝试对一些 .tiff 文件进行 OCR。显然,“Tesseract”只扫描每个文件的第一页。我一直在谷歌上寻找提示,但这不是很有帮助。 此代码应该从每个 .tiff 文件中获取完整文本:
public async Task<List<string>> ScannFile(string file)
{
if (Path.GetFileName(file).EndsWith(".pdf"))
{
MessageBox.Show("Sie können nur .tiff Dokumente einscannen!");
return null;
}
else
{
List<string> PageContent = new();
await Task.Run(new Action(() =>
{
using (var engine = new TesseractEngine(@"C:\Users\f.rigo\source\repos\FinalScanner\FinalScanner\bin\Debug\net5.0-windows/tessdata", "deu", EngineMode.TesseractOnly))
{
using (var img = Pix.LoadFromFile(file))
{
//img.Scale((float)scann_dpi / 2, (float)scann_dpi / 2);
using (var page = engine.Process(img))
{
var text = page.GetText();
PageContent = cleanOCROutput(text);
}
}
}
}));
return PageContent;
}
}
我尝试使用 for-each 循环获取完整文件,但不幸的是,“img”不包含任何可枚举的内容。顺便说一句,我正在使用 Tesseract 库。查尔斯·韦尔德(Charles Weld)。
对于如何扫描 .tiff 文件的第 2 页及以后的页面,您有什么建议吗?
【问题讨论】: