我试图以静态文件的方式实现QuaggaJS,但显然我遗漏了一些东西。我对javascript非常陌生,因此希望我能错过一些非常简单的东西。假设我在与此代码相同的目录中有一个名为123456.jpg的.jpg文件,我希望代码只是将条形码值作为警报返回。任何帮助都非常感谢(完全准备好为我缺乏对javascript的理解而大发雷霆!)
我的代码如下:
<script src="http://www.myserver.com/v3/javascripts/jquery-2.0.0.min.js" type="text/javascript"></script>
<script src="js/quagga.min.js" type="text/javascript"></script>
<script>
Quagga.decodeSingle({
decoder: {
readers: ["code_39_reader"] // List of active readers
},
locate: true, // try to locate the barcode in the image
src: '123456.jpg' // or 'data:image/jpg;base64,' + data
}, function(result){
if(result.codeResult) {
console.log("result", result.codeResult.code);
alert(result.codeResult.code);
} else {
console.log("not detected");
alert("not detected");
}
});
</script>发布于 2019-09-27 22:34:13
也许在页面加载时,我获得了以下代码来解码位于同一目录下的静态.jpg文件中的Code_39条形码:
<div>
<div id="resultdiv">scanning... </div>
</div>
<script src="../js/quagga.js" type="text/javascript"></script>
<script type="text/javascript">
var Quagga = window.Quagga;
var App = {
_scanner: null,
init: function() {
this.decode();
},
decode: function(file) {
Quagga
.decoder({readers: ['code_39_reader']})
.locator({patchSize: 'x-small'})
.fromSource('converted.jpg', {size: 1920})
.toPromise()
.then(function(result) {
document.getElementById("resultdiv").innerHTML=result.codeResult.code;
})
.catch(function() {
document.getElementById("resultdiv").innerHTML= "Not Found";
})
}
};
App.init();
</script>https://stackoverflow.com/questions/58121199
复制相似问题