Windows7 VisualStudio2013でC#を使ってWindows用のデスクトップアプリケーションを作っています。
画像ファイルからOCRしたいと思い、「Microsoft OCR Library for Windows Runtime」を試してみようと考えました。
C# Microsoft OCR Library for Windows Runtimeで検索したところ、
https://code.msdn.microsoft.com/windowsapps/Uses-the-OCR-Library-to-2a9f5bf4
にサンプルがあることがわかりました。
ダウンロードして開いてみて、
C#\Shared\Scenario1_ExtractText.xaml.csのなかの、
var ocrResult = await ocrEngine.RecognizeAsync((uint)bitmap.PixelHeight, (uint)bitmap.PixelWidth, bitmap.PixelBuffer.ToArray());
というところが、おおむねOCRを呼ぶメインのコードであろう、ということはわかりました。
が、これはどう見ても、というかプロジェクトを見れば明らかなのですが、ストアアプリのコードです。
これをデスクトップで使うにはどうしたらよいものでしょうか?
あるいは他のOCRで日本語を読めるフリーのものでC#で使えるものってご存じありませんか?
ちなみに、NuGetでMicrosoftのOCRの代わりに見つかったAsposeのOCRをいれて試したところ、コードも簡単で、英語なら読めました。
using Aspose.OCR;
private void Form1_Load(object sender, EventArgs e) {
//Initialize an instance of OcrEngine
OcrEngine ocrEngine = new OcrEngine();
string imageFile = @"C:\file.jpg";
ocrEngine.Image = ImageStream.FromFile(imageFile);
//Process the image if (ocrEngine.Process()) { //Display the recognized text textBox1.Text = ocrEngine.Text.ToString(); }
}
このくらいかんたんに日本語も読めたらうれしいのですが…。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。