是否可以知道鼠标附近显示的文字是什么?

ice*_*ace 23 macos cocoa objective-c

当鼠标悬停在Mac OS X平台上的某些文本/文字上时,我只是计划实现一些功能,如"在字典中查找".

如何在屏幕上显示鼠标附近的文本/文字,即使它们不在我自己的应用程序中.

我能做的是:

  1. 使用WorkSpace了解正在运行的应用程序.
  2. 使用辅助功能API来了解屏幕上的顶级UIElement.
  3. 如果应用程序使用类似NSTextView的东西,请使用辅助功能API来了解所选UIElement的字符串(我通过检查UIElement的"selected text"属性来获取它).

我不能做的是:

  1. 一些应用程序,比如Safari,使用WebKit框架,我可以从Accessibility API获得的唯一内容是"值属性",这是HTML的当前内容,以及一些名为"AXTextMarker"的属性.无法在Google或任何文档中找到这些属性.
  2. 有些应用程序甚至不支持Accessibility API,我能得到的只是它的屏幕截图.

有没有办法调用系统API来识别图像中的文本?在Snow Leopard中,有一个手写识别器功能可以输入中文或日文,那么它应该是一些OCR功能吗?我找不到任何开放的API.

Jak*_*zer 1

您可能可以做的是:
选择文本后,使用元键 + 和弦来激活词典。事实上,如果每当我靠近文字时,一本字典就会弹出,我会觉得非常令人讨厌。特别是因为我阅读了大量的白皮书,几乎任何可以想象到的字典都会花费大部分时间窒息和死亡。