12
2016
10

js生成条形码-barcode

http://barcode-coder.com/ 有一个js生成条形码的库。

修改了一下。把编码的函数和显示的函数分离开,去掉了对jquery的依赖。

/**
 * 修改:hanyeah
 * 修改为相对独立的方法,去掉对jquery的依赖。
 *
 * 使用方法:
 * 
 * 1、调用encode方法,并接收返回值,其中参数和原来是一样的:function encode(datas, type, settings) ,如
 * var o=barcode.encode("1234567890128", "ean13");
 * 返回值结构如下:
 * {"f":f,"o":o,"g":g}
 * f是设置参数,由encode的第三个参数和barcode.a.settings共同决定;
 * o是编码之后的字符串;
 * g是compute之后的datas(不知道理解的对不对)
 * 
 * 2、调用barcode.a.digitToCanvas、barcode.a.digitToSvg、barcode.a.digitToBmp等方法,将编码之后的字符串转换成图。
 * 例如
 * 转成canvas:
 * var jq=new barcode.jq();
 * barcode.a.digitToCanvas(jq,o.f,o.o,o.g);
 * 转成Bitmap:
 * var jq=new barcode.jq();
 * barcode.a.digitToBmp(jq,o.f,o.o,o.g);
 * ......
 * barcode.jq是新添加的一个对象,为了替代jquery。
 * jq.data就是转换之后得到的对象。可能不能直接用于显示。
 *
 * 3、将最终的结果添加到html中,显示出来。详见下面的demo。
 *
 * demo:
 *
 * function digitToSvg(){
 *     var jq=new barcode.jq();
 *     barcode.a.digitToSvg(jq,o.f,o.o,o.g);
 *     console.log("===========digitToSvg==============");
 *     console.log(jq);
 *     
 *     //var img=document.createElement("img");
 *     //document.body.appendChild(img);
 *     //img.src=jq.data.data;
 *     
 *     var div=document.createElement("div");
 *     div.innerHTML=jq.data.data.substring(19);
 *     div.style.width=jq.width+"px";
 *     document.body.appendChild(div);
 * }
 * function digitToSvg2D(){
 *     var jq=new barcode.jq();
 *     barcode.a.digitToSvg2D(jq,o.f,o.o,o.g);
 *     console.log("===========digitToSvg2D==============");
 *     console.log(jq);
 *     var div=document.createElement("div");
 *     div.innerHTML=jq.data.data.substring(19);
 *     div.style.width=jq.width+"px";
 *     document.body.appendChild(div);
 * }
 * function digitToCanvas(){
 *     var jq=new barcode.jq();
 *     barcode.a.digitToCanvas(jq,o.f,o.o,o.g);
 *     console.log("===========digitToCanvas==============");
 *     console.log(jq);
 *     document.body.appendChild(jq.data);
 * }
 * function digitToCanvas2D(){
 *     var jq=new barcode.jq();
 *     barcode.a.digitToCanvas2D(jq,o.f,o.o,o.g);
 *     console.log("===========digitToCanvas2D==============");
 *     console.log(jq);
 *     document.body.appendChild(jq.data);
 * }
 * function digitToBmp(){
 *     var jq=new barcode.jq();
 *     barcode.a.digitToBmp(jq,o.f,o.o,o.g);
 *     console.log("===========digitToBmp==============");
 *     console.log(jq);
 *     var img=document.createElement("img");
 *     document.body.appendChild(img);
 *     img.src=jq.data.data;
 * }
 * function digitToBmp2D(){
 *     var jq=new barcode.jq();
 *     barcode.a.digitToBmp2D(jq,o.f,o.o,o.g);
 *     console.log("===========digitToBmp2D==============");
 *     console.log(jq);
 *     var img=document.createElement("img");
 *     document.body.appendChild(img);
 *     img.src=jq.data.data;
 * }
 * 
 */

点击查看demo.


barcode.js

« 上一篇下一篇 »

相关文章:

显示fps  (2020-1-19 9:16:17)

js保留有效数字  (2019-7-30 15:32:12)

js的parseInt方法  (2019-2-15 9:12:44)

闪电效果  (2017-11-28 15:4:19)

js中判断一个对象的类型  (2017-3-30 14:27:35)

解九连环  (2016-12-1 20:58:11)

DataURL与File,Blob,canvas对象之间的互相转换的Javascript  (2016-11-25 14:58:41)

GeoJSON格式  (2016-9-23 13:28:44)

使用Typescript开发基于createjs的项目  (2016-8-25 9:54:40)

github上一个js实现的编译器  (2016-8-17 14:32:19)

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。