我目前正在开发一个Windows 8.1应用程序,使用的是Web语言和大多数jQuery(Cordova类型项目),因为它可能会在其他平台上使用。 我需要使用Microsoft OCR库(而不是Tesseract或任何其他库,虽然我了解它们,但现在我确实需要用这个)来分析图像,并在我的应用程序中使用提取的文本。
我从MSDN下载了JavaScript示例应用程序并启动了它:它完全正常工作(当然,在VS 2013中安装OCR插件后)。
现在,我正在尝试将OCR引擎集成到我的应用程序中(我也在我的项目中安装了OCR插件),但它根本不起作用。 实际上,当我尝试在我的计算机上启动我的应用程序时,执行失败并返回了这个错误消息:
ms-appx://io.cordova.blankcordovaapp2 /www/scripts/myscript.js中第11行,第5列出现无法处理的异常
0x800a1391 - JavaScript执行错误:“WindowsPreview”未定义"
以下是“有缺陷”的代码部分(它位于我的脚本非常开头):
$(document).ready(function () {
"use strict";
// Keep objects in-scope across the lifetime of the scenario.
var FileToken = "";
// Define namespace and API aliases.
var FutureAccess = Windows.Storage.AccessCache.StorageApplicationPermissions.futureAccessList;
// Should be initialising the OCR engine
var OCR = WindowsPreview.Media.Ocr;
var ocrEngine = new OCR.OcrEngine(OCR.OcrLanguage.french);
document.addEventListener("deviceready", onDeviceReady, false);
我尝试以与Microsoft OCR示例相同的方式初始化OCR引擎。根据官方文档,VS似乎找不到应该存在的WindowsPreview.Media.Ocr:
Windows Runtime的Microsoft OCR库包含WindowsPreview.Media.Ocr命名空间。该库作为NuGet软件包分发 - 它未包含在Windows软件开发工具包(SDK)中。
我已经使用NuGet命令行在项目中安装了插件,所以不知道为什么它没有被识别并且无法初始化。
非常感谢您的帮助,如果我表达得不够清楚,请随时询问更多细节。
WindowsPreview.Media.Ocr.winmd
(来自包)的引用,并在OcrEngine
处得到了指定的模块无法找到
的错误提示。 - Eonasdan