生成条形码

[!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-13UPC-A条码时应选用的一种条码
    • Scanner.BarcodeFormat.UPC_A : 统一产品代码,只能表示数字,主要用于美国和加拿大地区,用于工业、医药、仓库等部门
    • Scanner.BarcodeFormat.QR_CODE : 最常用的二维码,QR码,呈正方形,常见的黑白两色
    • Scanner.BarcodeFormat.AZTEC : 由美国韦林公司推出,最多可容纳3832个数字或3067个字母字符或1914个字节的数据
  • width(Number / 可选) -- 条形码图片的宽度,单位px,默认200px
  • height(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"

results matching ""

    No results matching ""