以编程方式获取屏幕截图,裁剪部分和运行OCR工具。快速解决方案

时间:2012-01-29 23:38:27

标签: windows screenshot ocr crop

我将编写带截图的代码,裁剪到屏幕的一小部分(预定义的屏幕区域),然后从裁剪后的图像中提取文本(通过OCR工具),然后将生成的文本保存到一份文件。我想知道是否有软件(最好是Windows)可以做到这一点,或者至少是它的一部分。我已经将tesseract作为OCR工具。任何人都知道可以截取屏幕截图的软件,并可能裁剪图像的预定义区域。 谢谢, -Jason

2 个答案:

答案 0 :(得分:1)

我使用 Greenshot,这是一个非常棒的截屏工具,根据常见问题解答,它也支持 OCR(使用 MODI = Microsoft Office Document Imaging)。然而,我从来没有让它在我的 Windows 机器上运行,而是使用 Tesseract(对于 Linux,有一些脚本编写经验,这种方法应该也是可能的):

  1. 下载适用于 Ubuntu/Debian/Windows 的 Tesseract here 并安装。
  2. 下载并安装Greenshot
  3. 使用记事本或 Notepad++ 等文本编辑器创建一个名为“Greenshot_Tesseract_OCR.bat”的新 Windows 批处理脚本 - 并将其保存在您选择的位置,例如“C:\Users\MyUser\Scripts\Greenshot_Tesseract_OCR.bat”——内容如下(取决于tesseract的安装位置):
ECHO OFF
set arg1=%1
"C:\Program Files\Tesseract-OCR\tesseract.exe" "%arg1%" "%arg1%"
type "%arg1%.txt" | clip
  1. 右键单击工具栏中的 Greenshot 图标,然后单击“配置外部命令”
  2. 添加一个名为“Tesseract OCR to Clipboard”的新命令,选择您刚刚创建的批处理脚本作为命令和参数,使用默认的 "{0}"。然后单击“确定”两次。
  3. 您现在应该可以使用快捷方式(在我的情况下为“打印”键)和 1-2 次鼠标点击(取决于您的 Greenshot 设置)将屏幕截图的文本复制到剪贴板中!

答案 1 :(得分:0)

您可以尝试以下开源程序:

Greenshot用于屏幕截图,VietOCR(Tesseract的GUI前端)用于屏幕截图上的OCR。