Text Extractor 实用工具

Text Extractor 使你可以从屏幕上的任意位置复制文本,包括图像或视频内部。 此代码基于 Joe Finney 的 Text Grab

如何激活

使用激活快捷方式(默认:⊞ Win+Shift+T),屏幕上将显示覆盖区。 单击并按住主鼠标按钮,然后拖动以激活捕获。 文本将保存到剪贴板。

如何停用

捕获模式在识别选定区域中的文本并复制到剪贴板后立即停用。 随时使用 Esc 退出捕获模式。

尝试捕获时调整

通过按住 Shift,你将从调整捕获区域的大小更改为移动捕获区域。 松开 Shift 后,将能够再次重设大小。

重要

  1. 生成的文本可能并不完美,因此必须对输出进行快速校对。
  2. 此工具使用 OCR(光学字符识别)来读取屏幕上的文本。
  3. 使用的默认语言将基于 Windows 系统语言 > 键盘设置。 OCR 语言包可用于安装。

设置

从“设置”菜单中,可以配置以下选项:

设置 说明
激活快捷方式 用于打开或关闭此模块的可自定义键盘命令。
首选语言 用于 OCR 的语言。

支持的语言

Text Extractor 只能识别已安装 OCR 语言包的语言。

可以通过运行以下命令,通过 PowerShell 获取该列表:

# Please use Windows PowerShell, not PowerShell 7 as these aren't .NET Core libraries

[Windows.Media.Ocr.OcrEngine, Windows.Foundation, ContentType = WindowsRuntime]

[Windows.Media.Ocr.OcrEngine]::AvailableRecognizerLanguages

如何查询 OCR 语言包

若要返回所有受支持的语言包的列表,请以管理员身份打开 PowerShell(右键单击,然后选择“以管理员身份运行”),并输入以下命令:

Get-WindowsCapability -Online | Where-Object { $_.Name -Like 'Language.OCR*' }

示例输出:

Name  : Language.OCR~~~el-GR~0.0.1.0
State : NotPresent

Name  : Language.OCR~~~en-GB~0.0.1.0
State : NotPresent

Name  : Language.OCR~~~en-US~0.0.1.0
State : Installed

Name  : Language.OCR~~~es-ES~0.0.1.0
State : NotPresent

Name  : Language.OCR~~~es-MX~0.0.1.0
State : NotPresent

语言和位置为缩写形式,因此“en-US”表示“英语-美国”,“en-GB”则表示“英语-英国”。 如果某个语言在输出中不可用,则 OCR 不支持该语言。 必须先安装 State: NotPresent 语言。

如何安装 OCR 语言包

以下为安装“en-US”OCR 包的命令:

$Capability = Get-WindowsCapability -Online | Where-Object { $_.Name -Like 'Language.OCR*en-US*' }
$Capability | Add-WindowsCapability -Online

如何移除 OCR 语言包

以下为移除“en-US”OCR 包的命令:

$Capability = Get-WindowsCapability -Online | Where-Object { $_.Name -Like 'Language.OCR*en-US*' }
$Capability | Remove-WindowsCapability -Online

疑难解答

本部分将列出可能的错误和解决方案。

“未安装可能的 OCR 语言”

当没有可用的语言可进行识别时,将显示此消息。

如果 OCR 包受支持并已安装,但仍不可用,并且系统驱动器 X: 不同于“C:”,则复制 X:/Windows/OCR 文件夹到 C:/Windows/OCR 以解决此问题。