没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:杨鹏连|2020-07-03 13:47:52.533|阅读 417 次
概述:在本文中,让我们看一下一个JavaScript示例,该示例通过调用Dynamsoft JavaScript条码SDK来用几行代码实现。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
Dynamic Web TWAIN是一个专为Web应用程序设计的TWAIN扫描识别控件。你只需在TWAIN接口写几行代码,就可以用兼容TWAIN的扫描仪扫描文档或从数码相机/采集卡中获取图像。然后用户可以编辑图像并将图像保存为多种格式,用户可保存图像到远程数据库或者SharePoint。这个TWAIN控件还支持上传和处理本地图像。
知道如何从Android上的PDF417中读取驾驶执照信息。与构建Android本机摄像头应用程序相比,构建网络摄像头应用程序要容易得多。在本文中,让我们看一下一个JavaScript示例,该示例通过调用Dynamsoft JavaScript条码SDK来用几行代码实现。
JS Barcode SDK安装
在JavaScript的条码库可供下载的npmjs.org。
您可以通过以下方式下载软件包
npm install dynamsoft-javascript-barcode --save
或直接包含在线JS文件:
<script src="//cdn.jsdelivr.net/npm/dynamsoft-javascript-barcode@7.4.0-v1/dist/dbr.js" data-productKeys="PRODUCT-KEYS"></script>
在不到30秒的时间内构建Web条形码阅读器
Dynamsoft JavaScript条码SDK基于WebAssembly,为Web开发人员带来了高性能的条码扫描功能。此外,它提供了内置的相机模块API。使用深层封装JavaScript SDK,您将发现使用相机制作HTML5条码读取器从未如此便捷。
要快速构建网络条形码阅读器,您只需要将以下代码复制到HTML文件中:
<!DOCTYPE html>
<html>
<body>
<script src="//cdn.jsdelivr.net/npm/dynamsoft-javascript-barcode@7.4.0-v1/dist/dbr.js" data-productKeys="PRODUCT-KEYS"></script>
<script>
let scanner = null;
(async()=>{
scanner = await Dynamsoft.BarcodeScanner.createInstance();
scanner.onFrameRead = results => {console.log(results);};
scanner.onUnduplicatedRead = (txt, result) => {alert(txt);};
await scanner.show();
})();
</script>
</body>
</html>
注意:您必须获得免费的试用许可证才能替换PRODUCT-KEYS。
如果您已将Microsoft Edge,Chrome或Firefox更新到最新版本,则只需双击即可打开HTML文件,而不需要进行任何Web服务器部署。
基于AAMVA标准解析驾驶执照信息
为了更好地平衡PDF417符号解码的准确性和性能,您最好根据在线文档进行一些参数配置:
let runtimeSettings = await scanner.getRuntimeSettings(); runtimeSettings.barcodeFormatIds = Dynamsoft.EnumBarcodeFormat.BF_PDF417; runtimeSettings.LocalizationModes = [2,8,0,0,0,0,0,0]; runtimeSettings.deblurLevel = 2;
最后一件事是创建一个JavaScript解析器,用于基于AAMVA标准提取驾驶执照信息:
const DLAbbrDesMap = {
'DCA': 'Jurisdiction-specific vehicle class',
'DBA': 'Expiry Date',
'DCS': 'Last Name',
'DAC': 'First Name',
'DBD': 'Issue Date',
'DBB': 'Birth Date',
'DBC': 'Gender',
'DAY': 'Eye Color',
'DAU': 'Height',
'DAG': 'Street',
'DAI': 'City',
'DAJ': 'State',
'DAK': 'Zip',
'DAQ': 'License Number',
'DCF': 'Document Discriminator',
'DCG': 'Issue Country',
'DAH': 'Street 2',
'DAZ': 'Hair Color',
'DCI': 'Place of birth',
'DCJ': 'Audit information',
'DCK': 'Inventory Control Number',
'DBN': 'Alias / AKA Family Name',
'DBG': 'Alias / AKA Given Name',
'DBS': 'Alias / AKA Suffix Name',
'DCU': 'Name Suffix',
'DCE': 'Physical Description Weight Range',
'DCL': 'Race / Ethnicity',
'DCM': 'Standard vehicle classification',
'DCN': 'Standard endorsement code',
'DCO': 'Standard restriction code',
'DCP': 'Jurisdiction-specific vehicle classification description',
'DCQ': 'Jurisdiction-specific endorsement code description',
'DCR': 'Jurisdiction-specific restriction code description',
'DDA': 'Compliance Type',
'DDB': 'Card Revision Date',
'DDC': 'HazMat Endorsement Expiration Date',
'DDD': 'Limited Duration Document Indicator',
'DAW': 'Weight(pounds)',
'DAX': 'Weight(kilograms)',
'DDH': 'Under 18 Until',
'DDI': 'Under 19 Until',
'DDJ': 'Under 21 Until',
'DDK': 'Organ Donor Indicator',
'DDL': 'Veteran Indicator',
// old standard
'DAA': 'Customer Full Name',
'DAB': 'Customer Last Name',
'DAE': 'Name Suffix',
'DAF': 'Name Prefix',
'DAL': 'Residence Street Address1',
'DAM': 'Residence Street Address2',
'DAN': 'Residence City',
'DAO': 'Residence Jurisdiction Code',
'DAR': 'License Classification Code',
'DAS': 'License Restriction Code',
'DAT': 'License Endorsements Code',
'DAV': 'Height in CM',
'DBE': 'Issue Timestamp',
'DBF': 'Number of Duplicates',
'DBH': 'Organ Donor',
'DBI': 'Non-Resident Indicator',
'DBJ': 'Unique Customer Identifier',
'DBK': 'Social Security Number',
'DBM': 'Social Security Number',
'DCH': 'Federal Commercial Vehicle Codes',
'DBR': 'Name Suffix',
'PAA': 'Permit Classification Code',
'PAB': 'Permit Expiration Date',
'PAC': 'Permit Identifier',
'PAD': 'Permit IssueDate',
'PAE': 'Permit Restriction Code',
'PAF': 'Permit Endorsement Code',
'ZVA': 'Court Restriction Code',
'DAD': 'Middle Name'
};
var parseDriverLicense = txt => {
console.log(txt);
let lines = txt.split('\n');
let abbrs = Object.keys(DLAbbrDesMap);
let map = {};
lines.forEach((line, i) => {
let abbr;
let content;
if(i === 1){
abbr = 'DAQ';
content = line.substring(line.indexOf(abbr) + 3);
}else{
abbr = line.substring(0, 3);
content = line.substring(3).trim();
}
if(abbrs.includes(abbr)){
map[abbr] = {
description: DLAbbrDesMap[abbr],
content: content
};
}
});
return map;
};
为了节省时间,您可以使用alert()显示驾驶执照信息:
scanner.onUnduplicatedRead = txt => {
// Get infos
let licenseInfo = parseDriverLicense(txt);
alert(JSON.stringify(licenseInfo));
};
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@ke049m.cn
文章转载自:



在使用Parasoft C/C++test执行BugDetective数据流分析时,可能会遇到用户自定义的资源API,那在这种情况下,若要判断是否存在资源问题,如资源泄露等,则需要手动配置测试配置。
大型SaaS系统的自动化测试常常受制于界面变化快、结构复杂、加载机制多变等因素。从元素识别到脚本管理,SmartBear TestComplete帮助Salesforce建了可靠的自动化测试体系。
BarTender 标签管理系统,正是帮助企业轻松实现 GS1 标准化标签设计、编码生成与信息联动的强大工具。
Parasoft C/C++test 是一款功能强大的 C/C++ 软件测试工具,集成了静态代码分析、单元测试、集成测试和覆盖率分析等功能,单元测试作为其关键功能之一,为了适配多样化的目标部署环境,C/C++test 设计了灵活的测试结果收集机制。通过Socket通讯方式来收集单元测试结果,从而扩展其测试覆盖范围与应用场景。
相关产品
为你的应用程序提供支持,将iPhone或Android手机变成文档扫描仪
Dynamic Web TWAINDynamic Web TWAIN 应用于Web应用程序的TWAIN扫描识别工具,支持所有主流浏览器
最新文章 MORE
半岛外围网上直营相关的文章 MORE
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@ke049m.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
半岛外围网上直营 