カレントウィンドウの描画内容を 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_init | OCR エンジンを初期化 | (hspwinrtocr.dll) |
| ocr_run_file | 画像ファイルを OCR する | (hspwinrtocr.dll) |
| プラグイン / モジュール | hspwinrtocr.dll |
| バージョン | 1.0 |
| 作成日 | 2026-04-15 |
| 著作者 | IronHSP / hspwinrtocr |
| URL | https://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 ― 実行 |
| 対応環境 |
|
| hs ファイル | hsphelp\hspwinrtocr.hs |