EasyQRCodeJS是一款功能丰富的跨浏览器的纯 JavaScript QRCode 生成库。支持 JavaScript 模块化加载。支持点状风格,Logo,背景图片,规则色彩控制,标题等设置。它的特点还有:

  • 跨浏览器,支持基于 HTML5 Canvas 和 Table 的二维码生成
  • 支持点形风格的 Required Patterns
  • 支持 Quiet Zone 设置
  • 支持自定义 Position Pattern 内填充和外边框颜色
  • 支持自定义 Alignment Pattern 内填充和外边框颜色
  • 支持自定义 Timing Patterns 垂直,水平颜色
  • 支持 Logo 图片(包括背景透明的 PNG 图片)
  • 支持 Background Image 背景图片
  • 支持标题,副标题设置
  • 不依赖任何第三方
  • 支持 AMD,CMD, CommonJS/Node.js JavaScript 模块加载规范

使用方法

npm

npm install easyqrcodejs
                

在HTML文件中引入。

<script src="dist/easy.qrcode.min.js" type="text/javascript" charset="utf-8"></script>            
                
HTML结构
<div id="qrcode"></div>
                
javascript
var options = {
  text: "https://github.com/ushelp/EasyQRCodeJS"
};

// Create QRCode Object
new QRCode(document.getElementById("qrcode"), options);
                

AMD load

require.config({
  // 指定模块id 和其对应文件的相对路径
  paths: {
    QRCode: "<YOUR_PATH>/easy.qrcode.min"
  }
 });
 
 require(["QRCode"], function(QRCode){
  
  // Your code...
  
 });                  
                

commonJs

const QRCode = require('easyqrcodejs');              
                

配置参数

var options = {
    // ====== Basic
    text: "https://github.com/ushelp/EasyQRCodeJS",
    width: 256,
    height: 256,
    quietZone: 0,
    colorDark : "#000000",
    colorLight : "#ffffff",
    correctLevel : QRCode.CorrectLevel.H, // L, M, Q, H
    dotScale: 1 // Must be greater than 0, less than or equal to 1. default is 1
    
    // ====== Logo
    //  logo:"../demo/logo.png", // Relative address, relative to `easy.qrcode.min.js`
    //  logo:"http://127.0.0.1:8020/easy-qrcodejs/demo/logo.png", 
    //  logoWidth:80, // widht. default is automatic width
    //  logoHeight:80 // height. default is automatic height
    //  logoBackgroundColor:'#fffff', // Logo backgroud color, Invalid when `logBgTransparent` is true; default is '#ffffff'
    //  logoBackgroundTransparent:false, // Whether use transparent image, default is false
  
    // ====== Backgroud Image
    //  backgroundImage: '', // Background Image
    //  backgroundImageAlpha: 1, // Background image transparency, value between 0 and 1. default is 1. 
    //  autoColor: false,
    
    
    // ====== Colorful
    // === Posotion Pattern(Eye) Color
    //  PO: '#e1622f', // Global Posotion Outer color. if not set, the defaut is `colorDark`
    //  PI: '#aa5b71', // Global Posotion Inner color. if not set, the defaut is `colorDark`
    //  PO_TL:'', // Posotion Outer color - Top Left 
    //  PI_TL:'', // Posotion Inner color - Top Left 
    //  PO_TR:'', // Posotion Outer color - Top Right 
    //  PI_TR:'', // Posotion Inner color - Top Right 
    //  PO_BL:'', // Posotion Outer color - Bottom Left 
    //  PI_BL:'', // Posotion Inner color - Bottom Left 
    //  PO_BR:'', // Posotion Outer color - Bottom Right 
    //  PI_BR:'', // Posotion Inner color - Bottom Right 
    // === Alignment Color
    //  AO: '', // Alignment Outer. if not set, the defaut is `colorDark`
    //  AI: '', // Alignment Inner. if not set, the defaut is `colorDark`
    // === Timing Pattern Color
    //  timing: '#e1622f', // Global Timing color. if not set, the defaut is `colorDark`
    //  timing_H: '', // Horizontal timing color
    //  timing_V: '', // Vertical timing color
    
    // ====== Title
    //  title: 'QR Title', // content 
    //  titleFont: "bold 18px Arial", //font. default is "bold 16px Arial"
    //  titleColor: "#004284", // color. default is "#000"
    //  titleBackgroundColor: "#fff", // background color. default is "#fff"
    //  titleHeight: 70, // height, including subTitle. default is 0
    //  titleTop: 25, // draws y coordinates. default is 30
    
    // ====== SubTitle
    //  subTitle: 'QR subTitle', // content
    //  subTitleFont: "14px Arial", // font. default is "14px Arial"
    //  subTitleColor: "#004284", // color. default is "4F4F4F"
    //  subTitleTop: 40, // draws y coordinates. default is 0
    
    // ===== Event Handler
    //  onRender: undefined
}            
                

EasyQRCodeJS插件的github网址为:https://github.com/ushelp/EasyQRCodeJS