基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作
在很多项目里面,对条形码和二维码的生成和打印也是一种很常见的操作,在Web项目里面,我们可以利用JS生成条形码和二维码的组件有很多。本文引入两个比较广泛使用的JS组件,用来处理条形码和二维码的生成处理,并介绍如何利用CLODOP组件实现内容的打印输出。
生成条形码使用组件JsBarcode,生成二维码使用组件qrcodejs。
1、条形码的生成
条码的作用一般在一些商品标签上,方便使用条码枪快速、准确录入信息。
如下所示是一种条形码
这里条形码生成使用了JsBarcode组件进行处理,它支持很多格式的条码格式,如下所示。
它的简单代码例子如下所示。
//HTML代码 <svg id="barcode"></svg> <!-- or --> <canvas id="canvas"></canvas> <!-- or --> <img id="barcode"/> //JS代码 JsBarcode("#barcode", "Hi!"); // or with jQuery $("#barcode").JsBarcode("Hi!");
生成的图片格式如下所示。
JsBarcode组件支持多种选项参数的设置,如下所示的代码
JsBarcode("#barcode", "1234", { format: "pharmacode", lineColor: "#0aa", width:4, height:40, displayValue: false }); JsBarcode("#barcode") .options({font: "OCR-B"}) // Will affect all barcodes .EAN13("1234567890128", {fontSize: 18, textMargin: 0}) .blank(20) // Create space between the barcodes .EAN5("12345", {height: 85, textPosition: "top", fontSize: 16, marginTop: 15}) .render(); 通过该组件的案例代码介绍,我们可以了解到生成常规二维码的使用方式。 例如我们在界面上添加了以下HTML代码。 <div class="row" id="barDiv1"> <div class="col-md-4 col-sm-4 col-xs-4"> 条形码(770 145 896 701):<br /> <img alt="" id="barcode1" /> </div> <div class="col-md-4 col-sm-4 col-xs-4"> 条形码(770 145 896 702):<br /> <img alt="" id="barcode2" /> </div> <div class="col-md-4 col-sm-4 col-xs-4"> 条形码(770 145 896 703):<br /> <img alt="" id="barcode3" /> </div> </div>
然后通过JS代码实现二维码的生成。
//使用JsBarcode生成条形码 for (var i = 1; i < 10; i++) { var barcodeValue = "77014589670" + i;//前缀 + 数值 JsBarcode("#barcode" + i, barcodeValue, { format: "CODE128", displayValue: true, fontSize: 24, lineColor: "#0cc" }); }
最后我们可以看到具体的生成效果如下所示。
从这里我们可以看到,使用JS实现条形码的生成是非常方便简洁的,同事速度也是很不错的。
2、二维码的生成
二维码实现可以通过使用组件qrcodejs进行生成,二维码也可以使用组件jquery-qrcode进行生成,也相对比较简洁,不过打印二维码文档的时候,jquery-qrcode没有显示二维码图片,而组件qrcodejs则工作正常,因此推荐使用组件qrcodejs。
这个qrcodejs组件使用方式也很简单,基础使用代码如下所示。
<div id="qrcode"></div> <script type="text/javascript"> new QRCode(document.getElementById("qrcode"), "http://jindo.dev.naver.com/collie"); </script>
复杂一点的使用JS代码如下所示。
<div id="qrcode"></div> <script type="text/javascript"> var qrcode = new QRCode(document.getElementById("qrcode"), { text: "http://jindo.dev.naver.com/collie", width: 128, height: 128, colorDark : "#000000", colorLight : "#ffffff", correctLevel : QRCode.CorrectLevel.H }); </script>
通过了解该组件的使用,我们可以在项目中增加一个实际的代码进行测试,如下所示。
<table border='0' width='100%'> <tr> <td> 设备二维码(9001):<br /> <div id="imgDevice9001"></div> </td> <td> 设备二维码(9002):<br /> <div id="imgDevice9002"></div> </td> <td> 设备二维码(9003):<br /> <div id="imgDevice9003"></div> </td> </tr> <tr style="height:20px"><td colspan="3"></td></tr> ...... </table>
具体我们可以利用JS动态生成相关的二维码。
//设备图片二维码 for (var i = 9001; i < 9010; i++) { var url = "http://www.iqidi.com/H5/device?devicecode=" + i; //使用jquery.qrcode的做法 //$("#imgDevice" + i).qrcode({ width: 100, height: 100, text: url }); //$("#imgDevice" + i).css("height", "100px"); //使用qrcodejs的做法 var qrcode = new QRCode(document.getElementById("imgDevice" + i), { text: url, width: 128, height: 128, colorDark: "#000000", colorLight: "#ffffff", correctLevel: QRCode.CorrectLevel.H }); }
最后界面生成的二维码如下所示。
3、条形码和二维码的打印处理
介绍我二维码和条形码的生成,关于它们的打印,可以利用我介绍过的CLODOP进行打印处理,需要了解可以参考下随笔基于MVC+EasyUI的web开发框架之使用云打印控件C-Lodop打印页面或套打报关运单信息
我们在这里介绍的打印,也是基于这个控件的打印处理的。
当然,如果打印,也是可以利用PrintThis这个组件进行处理的(详细可以参考随笔基于BootStrap Metronic开发框架经验小结【九】实现Web页面内容的打印预览和保存操作),不过总体效果没有上面的CLODOP的打印效果佳。
打印JS代码如下所示,可以采用下面两个函数的其中之一进行处理。
//使用表格格式化输出 function PrintBarcodeWithTable() { LODOP = getLodop(); LODOP.PRINT_INIT("条码_格式化输出"); var strHTML = "<table border='0' width='100%' >"; strHTML = strHTML + "<tr><td>"; strHTML = strHTML + $("#barDiv1").html(); strHTML = strHTML + "</td></tr>"; strHTML = strHTML + "<tr><td>"; strHTML = strHTML + $("#barDiv2").html(); strHTML = strHTML + "</td></tr>"; strHTML = strHTML + "<tr><td>"; strHTML = strHTML + $("#barDiv3").html(); strHTML = strHTML + "</td></tr>"; LODOP.ADD_PRINT_TABLE(88, 200, 700, 900, strHTML); LODOP.SET_SHOW_MODE("PREVIEW_IN_BROWSE", 1); LODOP.PREVIEW(); } //使用分页输出 function PrintBarcodeWithPaging() { LODOP = getLodop(); LODOP.PRINT_INIT("条码_分页输出"); LODOP.ADD_PRINT_HTM(100, 100, 600, 800, $("#barDiv1").html()); LODOP.NewPage(); LODOP.ADD_PRINT_HTM(100, 100, 600, 800, $("#barDiv2").html()); LODOP.NewPage(); LODOP.ADD_PRINT_HTM(100, 100, 600, 800, $("#barDiv3").html()); LODOP.NewPage(); LODOP.SET_SHOW_MODE("PREVIEW_IN_BROWSE", 1); LODOP.PREVIEW(); }
条码的打印效果如下所示。
而打印二维码的JS代码如下所示。
//打印二维码 function PrintQrcode2() { CreatePrintData($("#qrcode").html()); LODOP.SET_SHOW_MODE("PREVIEW_IN_BROWSE", 1); LODOP.PREVIEW(); } //打印数据构建 function CreatePrintData(html) { LODOP = getLodop(); LODOP.PRINT_INIT(""); //var strBodyStyle = "<link type='text/css' rel='stylesheet' href='/Content/Themes/Default/style.css' />"; var strBodyStyle = "<style><!--table { border:1;background-color: #CBCBCC } td {border: 1; }"; strBodyStyle += " th { background-color:#F1F1F3;padding-left:5px;border:1}--></style>"; var strFormHtml = strBodyStyle + "<body>" + html + "</body>"; LODOP.ADD_PRINT_HTM(20, 40, 710, 900, strFormHtml); LODOP.PREVIEW(); }
得到的二维码打印效果如下所示。
最终完成了这个关于条形码、二维码的动态生成,以及图形打印的相关操作了。整个模块的界面如下所示。
关于条形码、二维码的处理,我们这里引入的条形码组件JsBarcode和二维码组件qrcodejs是非常不错的开源JS组件,满足了我们大多数的要求,而且使用方便、简洁,希望这些内容能够给你的项目提供灵感及用处。
以上所述是小编给大家介绍的基于Bootstrap的Metronic框架实现条码和二维码的生成及打印处理操作,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
相关文章
- 这篇文章主要介绍了Bootstrap Table使用整理(二)的相关资料,需要的朋友可以参考下...2017-06-15
基于BootStrap Metronic开发框架经验小结【八】框架功能总体界面介绍
这篇文章主要介绍了基于BootStrap Metronic开发框架经验小结【八】框架功能总体界面介绍 的相关资料,需要的朋友可以参考下...2016-05-14- 这篇文章主要教大家如何利用Bootstrap3制作图片轮播效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-05-14
- 这篇文章主要为大家分享了Bootstrap教程JS插件滚动监听学习笔记,内容很详细,感兴趣的小伙伴们可以参考一下...2016-05-20
- 这篇文章主要为大家详细解析了BootStrap图片样式、辅助类样式和CSS组件源码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-01-23
- 在网页中,经常见到进度条效果,那么这些个性的进度条组件效果是怎么实现的呢,下面脚本之家小编给大家分享Bootstrap进度条组件知识详解,感兴趣的朋友要求学习吧...2016-05-04
JS树形菜单组件Bootstrap TreeView使用方法详解
这篇文章主要为大家详细介绍了js组件Bootstrap TreeView使用方法,本文一部分针对于bootstrap的treeview的实践,另一部分是介绍自己写的树形菜单,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-01-09- 这篇文章主要为大家详细介绍了Bootstrap树形控件使用方法,感兴趣的小伙伴们可以参考一下...2016-01-29
- 这篇文章主要为大家详细介绍了Bootstrap选项卡学习笔记,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-02-19
基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)
这篇文章主要介绍了基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)的相关资料,非常不错,需要的朋友可以参考下...2016-09-01基于Bootstrap的Metronic框架实现页面链接收藏夹功能
本文给大家介绍基于Metronic的Bootstrap开发框架实现页面链接收藏夹功能,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧...2016-09-01- 本文通过实例代码给大家介绍了bootstrap导航条效果,代码简单易懂,非常不错,具有参考借鉴价值,需要的的朋友参考下吧...2017-05-22
- Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架,主要基于 HTML、CSS、JAVASCRIPT 的。接下来通过本文给大家介绍BootStrap 附加导航组件的知识,感兴趣的朋友一起学习吧...2016-07-29
- 这篇文章主要介绍了Bootstrap Table使用整理(四)之工具栏的相关资料,需要的朋友可以参考下...2017-06-15
基于BootStrap Metronic开发框架经验小结【六】对话框及提示框的处理和优化
这篇文章主要介绍了基于BootStrap Metronic开发框架经验小结【六】对话框及提示框的处理和优化的相关知识,主要对比说明在Bootstrap开发中用到的这些技术要点,对此文感兴趣的朋友一起学习吧...2016-05-14Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
这篇文章主要介绍了Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2016-06-24- 这篇文章主要介绍了BootStrap和jQuery相结合实现可编辑表格的相关资料,需要的朋友可以参考下...2016-04-23
基于Bootstrap实现Material Design风格表单插件 附源码下载
Jquery Material Form Plugin是一款基于Bootstrap的Material Design风格的jQuery表单插件。这篇文章主要介绍了基于Bootstrap的Material Design风格表单插件附源码下载,感兴趣的朋友参考下...2016-04-19BootStrap Progressbar 实现大文件上传的进度条的实例代码
这篇文章主要介绍了BootStrap Progressbar 实现大文件上传的进度条的实例代码的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2016-07-01BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
这篇文章主要介绍了BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2016-07-25