Можно ли узнать, какой текст отображается рядом с мышью?

Я просто планирую реализовать некоторые функции, такие как «Искать в словаре», когда мышь наводит курсор на текст / слова на экране на платформе Mac OS X.

Как мне получить отображаемый текст / слова рядом с мышью на экране, даже если они не в моем собственном приложении.

Что я могу сделать, это:

  1. Использование WorkSpace, чтобы узнать, какие приложения запущены.
  2. Используйте API специальных возможностей, чтобы узнать верхний UIElement на экране.
  3. Используйте API специальных возможностей, чтобы узнать выбранную строку UIElement, если приложение использует что-то вроде NSTextView (я получаю это, проверяя атрибут «выделенный текст» в UIElement).

Что я не могу сделать, так это:

  1. Некоторые приложения, такие как Safari, Используя платформу WebKit, единственное, что я могу получить от Accessibility API, - это «атрибут значения», который представляет собой текущее содержимое HTML, и некоторые атрибуты, названные как «AXTextMarker». Эти атрибуты нельзя найти ни в Google, ни в каком-либо документе.
  2. Некоторые приложения даже не поддерживают Accessibility API, я могу получить лишь снимок экрана.

Есть ли способ вызвать системный API для распознать текст на изображении? В Snow Leopard есть функция распознавания рукописного ввода для ввода на китайском или японском языках, так должна ли быть какая-то функция распознавания текста? Я не могу найти для этого открытого API.

23
задан Jonas 3 February 2011 в 23:44
поделиться