欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于Bootstrap的Metronic框架實(shí)現(xiàn)條碼和二維碼的生成及打印處理操作

 更新時(shí)間:2016年08月29日 10:31:38   投稿:mrr  
這篇文章主要介紹了基于Bootstrap的Metronic框架實(shí)現(xiàn)條碼和二維碼的生成及打印處理操作的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下

在很多項(xiàng)目里面,對條形碼和二維碼的生成和打印也是一種很常見的操作,在Web項(xiàng)目里面,我們可以利用JS生成條形碼和二維碼的組件有很多。本文引入兩個(gè)比較廣泛使用的JS組件,用來處理?xiàng)l形碼和二維碼的生成處理,并介紹如何利用CLODOP組件實(shí)現(xiàn)內(nèi)容的打印輸出。

生成條形碼使用組件JsBarcode,生成二維碼使用組件qrcodejs。

1、條形碼的生成

條碼的作用一般在一些商品標(biāo)簽上,方便使用條碼槍快速、準(zhǔn)確錄入信息。
如下所示是一種條形碼

 

這里條形碼生成使用了JsBarcode組件進(jìn)行處理,它支持很多格式的條碼格式,如下所示。

 

它的簡單代碼例子如下所示。

//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組件支持多種選項(xiàng)參數(shù)的設(shè)置,如下所示的代碼

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(); 

通過該組件的案例代碼介紹,我們可以了解到生成常規(guī)二維碼的使用方式。
例如我們在界面上添加了以下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代碼實(shí)現(xiàn)二維碼的生成。

//使用JsBarcode生成條形碼
for (var i = 1; i < 10; i++) {
var barcodeValue = "77014589670" + i;//前綴 + 數(shù)值
JsBarcode("#barcode" + i, barcodeValue, {
format: "CODE128",
displayValue: true, 
fontSize: 24,
lineColor: "#0cc"
});
}

最后我們可以看到具體的生成效果如下所示。

 

從這里我們可以看到,使用JS實(shí)現(xiàn)條形碼的生成是非常方便簡潔的,同事速度也是很不錯(cuò)的。

2、二維碼的生成

二維碼實(shí)現(xiàn)可以通過使用組件qrcodejs進(jìn)行生成,二維碼也可以使用組件jquery-qrcode進(jìn)行生成,也相對比較簡潔,不過打印二維碼文檔的時(shí)候,jquery-qrcode沒有顯示二維碼圖片,而組件qrcodejs則工作正常,因此推薦使用組件qrcodejs。

這個(gè)qrcodejs組件使用方式也很簡單,基礎(chǔ)使用代碼如下所示。

<div id="qrcode"></div>
<script type="text/javascript">
new QRCode(document.getElementById("qrcode"), "http://jindo.dev.naver.com/collie");
</script> 

復(fù)雜一點(diǎn)的使用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>

通過了解該組件的使用,我們可以在項(xiàng)目中增加一個(gè)實(shí)際的代碼進(jìn)行測試,如下所示。

<table border='0' width='100%'>
<tr>
<td>
設(shè)備二維碼(9001):<br />
<div id="imgDevice9001"></div>
</td>
<td>
設(shè)備二維碼(9002):<br />
<div id="imgDevice9002"></div>
</td>
<td>
設(shè)備二維碼(9003):<br />
<div id="imgDevice9003"></div>
</td>
</tr>
<tr style="height:20px"><td colspan="3"></td></tr>
......
</table> 

具體我們可以利用JS動(dòng)態(tài)生成相關(guān)的二維碼。

//設(shè)備圖片二維碼
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、條形碼和二維碼的打印處理

介紹我二維碼和條形碼的生成,關(guān)于它們的打印,可以利用我介紹過的CLODOP進(jìn)行打印處理,需要了解可以參考下隨筆基于MVC+EasyUI的web開發(fā)框架之使用云打印控件C-Lodop打印頁面或套打報(bào)關(guān)運(yùn)單信息

我們在這里介紹的打印,也是基于這個(gè)控件的打印處理的。

當(dāng)然,如果打印,也是可以利用PrintThis這個(gè)組件進(jìn)行處理的(詳細(xì)可以參考隨筆基于BootStrap Metronic開發(fā)框架經(jīng)驗(yàn)小結(jié)【九】實(shí)現(xiàn)Web頁面內(nèi)容的打印預(yù)覽和保存操作),不過總體效果沒有上面的CLODOP的打印效果佳。

打印JS代碼如下所示,可以采用下面兩個(gè)函數(shù)的其中之一進(jìn)行處理。

//使用表格格式化輸出
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();
}
//打印數(shù)據(jù)構(gòu)建
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();
}

得到的二維碼打印效果如下所示。

 

最終完成了這個(gè)關(guān)于條形碼、二維碼的動(dòng)態(tài)生成,以及圖形打印的相關(guān)操作了。整個(gè)模塊的界面如下所示。

 

關(guān)于條形碼、二維碼的處理,我們這里引入的條形碼組件JsBarcode和二維碼組件qrcodejs是非常不錯(cuò)的開源JS組件,滿足了我們大多數(shù)的要求,而且使用方便、簡潔,希望這些內(nèi)容能夠給你的項(xiàng)目提供靈感及用處。

以上所述是小編給大家介紹的基于Bootstrap的Metronic框架實(shí)現(xiàn)條碼和二維碼的生成及打印處理操作,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • ie 7/8不支持trim的屬性的解決方案

    ie 7/8不支持trim的屬性的解決方案

    在ie 7 8瀏覽器中,如果使用trim()屬性去除空格的話,則會(huì)導(dǎo)致報(bào)錯(cuò),下面有幾種不錯(cuò)的解決方法
    2014-05-05
  • JS+CSS3實(shí)現(xiàn)超炫的散列畫廊特效

    JS+CSS3實(shí)現(xiàn)超炫的散列畫廊特效

    這篇文章主要為大家詳細(xì)介紹了JS+CSS3實(shí)現(xiàn)超炫的散列畫廊特效,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-07-07
  • WEB高性能開發(fā)之瘋狂的HTML壓縮

    WEB高性能開發(fā)之瘋狂的HTML壓縮

    一篇隨筆中網(wǎng)友 skyaspnet 問我如何壓縮HTML,當(dāng)時(shí)回答是推薦他使用gzip,后來想想,要是能把所有的html,jsp(aspx)在運(yùn)行前都壓縮成1行未免不是一件好事啊。
    2010-06-06
  • js實(shí)現(xiàn)中文實(shí)時(shí)時(shí)鐘

    js實(shí)現(xiàn)中文實(shí)時(shí)時(shí)鐘

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)中文實(shí)時(shí)時(shí)鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-01-01
  • JS簡單模擬觸發(fā)按鈕點(diǎn)擊功能的方法

    JS簡單模擬觸發(fā)按鈕點(diǎn)擊功能的方法

    這篇文章主要介紹了JS簡單模擬觸發(fā)按鈕點(diǎn)擊功能的方法,涉及JavaScript事件調(diào)用機(jī)制及事件觸發(fā)的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11
  • 手機(jī)注冊發(fā)送驗(yàn)證碼倒計(jì)時(shí)的簡單實(shí)例

    手機(jī)注冊發(fā)送驗(yàn)證碼倒計(jì)時(shí)的簡單實(shí)例

    下面小編就為大家分享一篇手機(jī)注冊發(fā)送驗(yàn)證碼倒計(jì)時(shí)的簡單實(shí)例。具有很好的參考價(jià)值,一起跟隨小編過來看看吧,希望對大家有所幫助
    2017-11-11
  • JavaScript中this機(jī)制是如何真正工作的

    JavaScript中this機(jī)制是如何真正工作的

    JavaScript中this機(jī)制提供了更優(yōu)雅的方式來隱含地“傳遞”一個(gè)對象引用,導(dǎo)致更加干凈的API設(shè)計(jì)和更容易的復(fù)用,this既不是函數(shù)自身的引用,也不是函數(shù)詞法作用域的引用,this實(shí)際上是在函數(shù)被調(diào)用時(shí)建立的一個(gè)綁定,它指向什么是完全由函數(shù)被調(diào)用的調(diào)用點(diǎn)來決定的
    2023-11-11
  • 流量統(tǒng)計(jì)器如何鑒別C#:WebBrowser中偽造referer

    流量統(tǒng)計(jì)器如何鑒別C#:WebBrowser中偽造referer

    這篇文章主要介紹了流量統(tǒng)計(jì)器如何鑒別C#:WebBrowser中偽造referer,需要的朋友可以參考下
    2015-01-01
  • javascript實(shí)現(xiàn)簡單搜索功能

    javascript實(shí)現(xiàn)簡單搜索功能

    這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)簡單搜索功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • canvas學(xué)習(xí)之API整理筆記(二)

    canvas學(xué)習(xí)之API整理筆記(二)

    本篇文章的主要內(nèi)容包括高級動(dòng)畫、像素操作、性能優(yōu)化等知識(shí)點(diǎn),講解每個(gè)知識(shí)點(diǎn)的同時(shí)還會(huì)有一些酷炫的demo。下面跟著小編一起來看下吧
    2016-12-12

最新評論