これが難しいものです:
画面上で単語の位置とサイズ(フレーム)を見つけることができる必要があります(最初の出現で十分です。そこから次の単語を取得できるはずです)。
たとえば、Word、Excel、PowerPoint for Mac、およびSafariなどで単語の位置を検出できるようにしたいと考えています。
解決策は可能な限り高速である必要があります。1秒あたり少なくとも5〜6語を見つけて、CPU時間をできるだけ少なくすることができるはずです。
これが私がこれまでに考えたことです:
- ウィンドウのスクリーンショット/グラフィックスコンテキストでのOCR(Mac OS X 10.4で動作し、商用製品で使用できる優れたオープンソースフレームワークはありますか?)。Evernoteは、画像内の単語を見つけるのに非常に優れています。カスタムの社内エンジンを使用しているのか、オープンソース/商用エンジンを使用しているのかはわかりませんが、これが「有効な」ソリューションである場合は、それを使用したいと思います。理想的には、アクティブなアプリケーションのウィンドウで単語のフレームを検出します(別のアプリケーションのフレームを取得する方法は?)。
- クォーツによるテキストの描画に何らかの「フック」をかけ、描画されたときに単語の位置を傍受します(一見するとあまり実現可能ではないようです!)。
- AppleScriptですが、それはアプリケーションが提供するAPIに大きく依存し(私が見たものからWord文書で単語の座標を取得できるとは思いません)、遅いです。
- ...アイデアから..。
私の目標は、段落のテキストを含む文字列に基づいて、段落内のすべての単語のフレームを正しい順序で取得することです。
ヒントを事前に感謝します!