2017-01-04 37 views
0

我尝试开发离子应用程序,我想添加光学字符识别(OCR)。Ionic - OCR:ReferenceError TesseractPlugin未定义

我有安装科尔多瓦相机插件,我想利用这个GitHub的项目(正方体):https://github.com/gustavomazzoni/cordova-plugin-tesseract

但是,当我使用这个功能,我有以下的错误在我的JavaScript控制台:

ionic.bundle.js:26799 ReferenceError: TesseractPlugin is not defined

以下命令显示:cordova plugin list

cordova-plugin-camera 2.3.1 "Camera"

cordova-plugin-compat 1.1.0 "Compat"

cordova-plugin-tesseract 0.0.1 "Tesseract Plugin"

phonegap-plugin-barcodescanner 6.0.5 "BarcodeScanner"

这是我的控制器代码:

'Use Strict'; 
 

 
angular.module('App') 
 

 
    .controller('CameraOCRController', function($scope, $cordovaCamera) { 
 

 

 
     TesseractPlugin.loadLanguage(language, function(response) { 
 
      deferred.resolve(response); 
 
     }, function(reason) { 
 
      deferred.reject('Error on loading OCR file for your language. ' + reason); 
 
     }); 
 

 
     $scope.takePhoto = function() { 
 
      var options = { 
 
       quality: 75, 
 
       destinationType: Camera.DestinationType.DATA_URL, 
 
       sourceType: Camera.PictureSourceType.CAMERA, 
 
       allowEdit: true, 
 
       encodingType: Camera.EncodingType.JPEG, 
 
       targetWidth: 300, 
 
       targetHeight: 300, 
 
       popoverOptions: CameraPopoverOptions, 
 
       saveToPhotoAlbum: false 
 
      }; 
 
      $cordovaCamera.getPicture(options).then(function (imageData) { 
 
       $scope.imgURI = "data:image/jpeg;base64," + imageData; 
 

 
       TesseractPlugin.recognizeText(imageData, language, function(recognizedText) { 
 
        $scope.text = recognizedText; 
 
       }, function(reason) { 
 
        alert('Error on recognizing text from image. ' + reason); 
 
       }); 
 

 
      }, function (err) { 
 
       alert("An error occured. Show a message to the user"+err); 
 
      }); 
 
     }; 
 

 
    });

我没有看到我的错误。

+0

你是否解决了这个问题? – VLR

回答

0

在引用插件之前,您是否等待deviceready启动?

相关问题