ocr_run_file

画像ファイルを OCR する

ocr_run_file var, buf_size, "path"

var      : 認識結果テキストを受け取る文字列変数 (sdim 済)
buf_size : var に sdim で確保したバッファサイズ
path     : 画像ファイルのパス (相対/絶対どちらでも可)

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

解説

指定したファイルを StorageFile::GetFileFromPathAsync で開き、
BitmapDecoder で SoftwareBitmap に展開してから
OcrEngine::RecognizeAsync に渡して認識を行います。

対応フォーマットは WIC が扱えるもの (BMP/PNG/JPEG/GIF/TIFF
/WebP/HEIF など) です。

結果テキストは OcrResult::Text() の全文 (改行なしで 1 行に
結合された文字列) を cp932 に変換して var に書き込みます。

戻り値 (stat):
  0  : 成功
 -1  : 例外発生 (ファイル not found / OCR エンジン未初期化 等)
 -2  : path が空
 -3  : GetFullPathName 失敗

関連項目

ocr_initOCR エンジンを初期化(hspwinrtocr.dll)
ocr_run_hwndカレントウィンドウの描画内容を OCR する(hspwinrtocr.dll)

サンプル逆引き (1)

sample_winrtocr.hsp

情報

プラグイン / モジュール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