ocr_run_hwnd

カレントウィンドウの描画内容を OCR する

ocr_run_hwnd var, buf_size

var      : 認識結果テキストを受け取る文字列変数 (sdim 済)
buf_size : var に sdim で確保したバッファサイズ

(プラグイン / モジュール : hspwinrtocr.dll)

解説

HSP のカレントウィンドウ (gsel で選択中の ID) の BMSCR から
24bit BGR DIB を読み取り、Bgra8 SoftwareBitmap に変換して
OcrEngine::RecognizeAsync に渡します。

これにより画面上に描画したテキスト (たとえば picload した
画像や、boxf/mes で書いた内容) をファイルに保存せずに直接
OCR できます。

注意:
  - OCR 対象は redraw された可視の描画内容です。
  - bottom-up DIB を top-down に変換しているため、サイズが
    大きいと変換コストが発生します。

関連項目

ocr_initOCR エンジンを初期化(hspwinrtocr.dll)
ocr_run_file画像ファイルを OCR する(hspwinrtocr.dll)

情報

プラグイン / モジュールhspwinrtocr.dll
バージョン1.0
作成日2026-04-15
著作者IronHSP / hspwinrtocr
URLhttps://github.com/inovia/IronHSP
備考hspwinrtocr.dll は Windows 10 以降に標準搭載されている WinRT
OCR エンジン (Windows.Media.Ocr.OcrEngine) を HSP3 から直接呼び
出すためのプラグインです。

追加のモデルダウンロードは不要で、OS にインストール済みの言語パ
ックがそのまま OCR の認識言語になります (日本語 OCR は OS の
言語設定に日本語が含まれている必要があります)。

実装は C++/WinRT (header-only) + windowsapp.lib で、非同期
API はすべて内部で .get() による同期待ち扱いになっています。
HSP 側からは通常の同期呼び出しとして使えます。

API は画像ファイルからの OCR (ocr_run_file) と、HSP カレント
ウィンドウの描画内容からの OCR (ocr_run_hwnd) の 2 種類を提供
します。
タイプ拡張命令
グループhspwinrtocr ― 実行
対応環境
  • その他 : Win32 / Win64 (Windows 10 以降)
hs ファイルhsphelp\hspwinrtocr.hs