生成条形码
[!TIP|labelVisibility:hidden|iconVisibility:hidden] navigator.scanner.createBarCode(successCallback, errorCallback, options)
支持平台:
- Android
- iOS
参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
successCallback | Function | 否 | 成功回调函数 |
errorCallback | Function | 否 | 失败回调函数 |
options | Object | 是 | 参数对象 |
successCallback
函数会返回一个字符串,字符串内容为条形码图片存放的本地路径
errorCallback
函数会返回一个字符串,错误的相关信息
options
为参数对象,其属性可包含以下一项或多项:
content
(String / 必选) -- 条形码内容format
(可选) -- 条形码类型,默认为CODE128
。其值可为以下常量之一:Scanner.BarcodeFormat.CODE_128
: 最常用的条形码,表示高密度数据,字符串可变长,符号内含校验码,可用128个字符,用于工业、仓库和零售批发Scanner.BarcodeFormat.CODABAR
: 库德巴码,可表示数字0-9,字符$、+、-、还有只能用作起始/终止符的a,b,c,d四个字符,可变长度,没有校验位,应用于物料管理、图书馆、血站和当前的机场包括发送中Scanner.BarcodeFormat.CODE_39
: 编制简单、能够对任意长度的数据进行编码,支持设备广泛Scanner.BarcodeFormat.EAN_8、Scanner.BarcodeFormat.EAN_13
: 复合条码,主流应用是UCC.EAN
复合条码,主要满足如医药行业等需要同时包含产品标识及附加信息(如批次号、有效期)的应用场合Scanner.BarcodeFormat.ITF
: 主要应用于运输包装,是印刷条件较差,不允许印刷EAN-13
和UPC-A
条码时应选用的一种条码Scanner.BarcodeFormat.UPC_A
: 统一产品代码,只能表示数字,主要用于美国和加拿大地区,用于工业、医药、仓库等部门Scanner.BarcodeFormat.QR_CODE
: 最常用的二维码,QR码,呈正方形,常见的黑白两色Scanner.BarcodeFormat.AZTEC
: 由美国韦林公司推出,最多可容纳3832个数字或3067个字母字符或1914个字节的数据
width
(Number / 可选) -- 条形码图片的宽度,单位px,默认200pxheight
(Number / 可选) -- 条形码图片的高度,单位 px,默认100px
示例代码
生成条形码,只有content
// 引用js
<script src='supconit://hcmobile.js'></script>
<script>
// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
// 生成条形码,只有content
navigator.scanner.createBarCode(
function(result) {
alert(result);
},
function(error) {
alert(error);
},
{
content: '123456789'
}
);
}
</script>
生成条形码,全部参数
// 引用js
<script src='supconit://hcmobile.js'></script>
<script>
// 监听’deviceready‘事件
document.addEventListener('deviceready', onDeviceReady, false)
function onDeviceReady(){
// 生成条形码,全部参数
navigator.scanner.createBarCode(
function(result) {
alert(JSON.stringify(result));
},
function(error) {
alert(JSON.stringify(error));
},
{
content: '123456789',
width: 400,
height: 200,
format: Scanner.BarcodeFormat.CODE_128
}
);
}
</script>
响应示例代码:
"file:///var/mobile/Containers/Data/Application/E7F0975B-CA99-4570-8C48-762658EAA0EC/Library/Caches/com.supconit.hcmobile.ios/images/d1bd6cdb765163e5438e653d48a7c7d6.jpg"