如何让Ocrad.js示例工作

我正在制作一个OCR(光学字符识别)Web应用程序,我找到了JavaScript库Ocrad.js ,这正是我想要的,但我无法让它工作。 有人能帮助我吗?

这是我的代码:

       $(document).ready(function() { var image = document.getElementById('image'); var string = OCRAD(image); alert(string); });       

您不能只将元素传递给OCRAD()函数。

从Ocrad.js文档 :

此文件公开单个全局函数OCRAD,它将图像作为参数并将识别的文本作为字符串返回。 […] image参数可以是canvas元素,Context2D实例或ImageData的实例。

试试这个:

 $(document).ready(function() { var $img = $('#image'); var context = document.createElement('canvas').getContext('2d'); context.drawImage($img[0], 0, 0); var imageData = context.getImageData(0, 0, $img.width(), $img.height()); var string = OCRAD(imageData); alert(string); }); 

但是您可能必须在元素上放置widthheight属性才能使其正常工作。


如果您尝试将元素传递给OCRAD()函数,您将收到以下错误:

未捕获的exception:5264272 – 禁用exception捕获,无法捕获此exception。 使用-s DISABLE_EXCEPTION_CATCHING = 0或DISABLE_EXCEPTION_CATCHING = 2进行编译以进行捕获。

如果您尝试将jQuery对象传递给OCRAD()函数,您将收到以下错误:

错误:参数无效


注意:由于同源策略,如果映像的URL与其所在页面的域不同,则对context.getImageData()的调用将抛出SecurityError