qrcode-matrix 0.1.1 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -42
- package/dist/qrcodeMatrix.umd.js +2061 -0
- package/dist/qrcodeMatrix.umd.min.js +6 -0
- package/lib/encode/sjis.d.ts +2 -0
- package/lib/encode/sjisData.d.ts +2 -0
- package/lib/encode/utf-8.d.ts +2 -0
- package/lib/index.d.ts +5 -0
- package/lib/lib/BitBuffer.d.ts +9 -0
- package/lib/lib/QRMatrix.d.ts +10 -0
- package/lib/lib/bch-encode.d.ts +31 -0
- package/lib/lib/draw.d.ts +4 -0
- package/lib/modes/Alphanumeric.d.ts +3 -0
- package/lib/modes/Byte.d.ts +3 -0
- package/lib/modes/Kanji.d.ts +3 -0
- package/lib/modes/Numeric.d.ts +3 -0
- package/lib/modes/mode.d.ts +6 -0
- package/lib/qrcode.d.ts +19 -0
- package/lib/qrcodeMatrix.es.js +1356 -0
- package/lib/qrcodeMatrix.js +1363 -0
- package/lib/utils.d.ts +26 -0
- package/package.json +21 -21
- package/LICENSE +0 -21
- package/dist/qrcodeMatrix.js +0 -1890
- package/dist/qrcodeMatrix.min.js +0 -6
- package/dist/qrcodeMatrix.utf8.js +0 -1417
- package/dist/qrcodeMatrix.utf8.min.js +0 -6
- package/index.js +0 -18
- package/onlyUTF8.js +0 -11
- package/src/.DS_Store +0 -0
- package/src/encode/.DS_Store +0 -0
- package/src/encode/sjis.js +0 -125
- package/src/encode/utf-8.js +0 -32
- package/src/index.js +0 -218
- package/src/modes/Alphanumeric.js +0 -55
- package/src/modes/Byte.js +0 -27
- package/src/modes/Kanji.js +0 -51
- package/src/modes/Numeric.js +0 -43
- package/src/qr.js +0 -154
- package/src/utils.js +0 -1113
package/README.md
CHANGED
|
@@ -1,50 +1,65 @@
|
|
|
1
1
|
# qrcode-matrix
|
|
2
|
-
> `qrcode-matrix` 是QR码矩阵数据生成库, 最终生成QR
|
|
3
|
-
>
|
|
2
|
+
> `qrcode-matrix` 是QR码矩阵数据生成库, 最终生成QR码的点阵.
|
|
3
|
+
> 非一步到位生成二维码图片, 主要用于二维码图片生成/美化, 矢量图片二维码生成等场景
|
|
4
4
|
|
|
5
5
|
特点:
|
|
6
|
-
`splitMake` 方法,
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
- `splitMake` 方法, 会返回二维码不同功能的点阵信息数组.
|
|
7
|
+
- 支持转为`GBK`编码保存(实际上已经剥离出了数据转换部份,存任何编码方式都很方便)
|
|
8
|
+
- 提供精简版(gzip 5.2k),只保留`Byte`(utf8)模式;
|
|
9
|
+
- './onlyUTF8.js' or './dist/qrcodeMatrix.utf8.js'
|
|
10
10
|
|
|
11
|
+
> 生成的点阵用的是[BitMatrix](https://github.com/cnwhy/BitMatrix)库,其基于`ArrayBuffer`实现以节约内存,但只适用于`ES6`以上的环境。
|
|
11
12
|
## demo
|
|
12
13
|
```js
|
|
13
|
-
var QRCode = require('
|
|
14
|
+
var QRCode = require('../').default;
|
|
14
15
|
var qrcode = QRCode({
|
|
15
|
-
errorCorrectionLevel:
|
|
16
|
-
typeNumber:
|
|
17
|
-
minTypeNumber: 0,
|
|
18
|
-
maskPattern: 'auto',
|
|
19
|
-
dataMode: 'Byte'
|
|
20
|
-
})
|
|
16
|
+
errorCorrectionLevel: 'M', //纠错等级 默认M 'L','M','Q','H' -> [1,0,3,2]
|
|
17
|
+
typeNumber: 2, //QR码版本 默认0 (自动) 1 to 40
|
|
18
|
+
minTypeNumber: 0, //最小typeNumber版本,当typeNumber自动时才有效
|
|
19
|
+
maskPattern: 'auto', //掩模 'random','auto' [0-7]
|
|
20
|
+
dataMode: 'Byte' //默认数据类型, 参看 QRCode.QRModes 对像
|
|
21
|
+
});
|
|
21
22
|
qrcode.setData('1234');
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
var matrix = qrcode.make(); // 一个布尔值的二维点阵对像
|
|
24
|
+
|
|
25
|
+
//在控制台打印出二维码试试 (我的控制台是黑色背景,所以我加上了一圈边框)
|
|
26
|
+
var $0 = '8 ',
|
|
27
|
+
$1 = ' ';
|
|
28
|
+
console.log($0.repeat(matrix.width + 2));
|
|
29
|
+
for(var r =0; r<matrix.height; r++){
|
|
30
|
+
let row = matrix.getRow(r);
|
|
31
|
+
let str = row.map(item => (item ? $1 : $0)).join('');
|
|
32
|
+
console.log($0 + str + $0);
|
|
33
|
+
}
|
|
34
|
+
console.log($0.repeat(matrix.width + 2));
|
|
26
35
|
/*
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
36
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
37
|
+
8 8 8 8 8
|
|
38
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
39
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
40
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
41
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
42
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
43
|
+
8 8 8 8 8 8 8 8
|
|
44
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
45
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
46
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
47
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
48
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
49
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
50
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
51
|
+
8 8 8 8 8 8 8 8 8 8
|
|
52
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
53
|
+
8 8 8 8 8 8 8 8 8 8 8 8
|
|
54
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
55
|
+
8 8 8 8 8 8 8 8 8 8 8 8
|
|
56
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
57
|
+
8 8 8 8 8 8 8 8 8
|
|
58
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
59
|
+
8 8 8 8 8 8 8 8 8 8 8
|
|
60
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
61
|
+
8 8 8 8 8 8 8 8 8 8
|
|
62
|
+
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
|
|
48
63
|
*/
|
|
49
64
|
```
|
|
50
65
|
|
|
@@ -80,9 +95,9 @@ console.log(Object.keys(QRCode_utf8.QRModes));
|
|
|
80
95
|
|
|
81
96
|
### qrcode.addData(data,mode) //添加数据 可以多次添加
|
|
82
97
|
|
|
83
|
-
### qucode.setData(data,mode) //重新添加数据
|
|
98
|
+
### qucode.setData(data,mode) //重新添加数据 会移除之前的数据
|
|
84
99
|
|
|
85
|
-
### qucode.make()
|
|
100
|
+
### qucode.make() //根据添加的数据生成QR码的二维点阵对像
|
|
86
101
|
|
|
87
102
|
### qucode(data,mode) //一个语法糖
|
|
88
103
|
```js
|
|
@@ -92,7 +107,7 @@ return qucode.make();
|
|
|
92
107
|
```
|
|
93
108
|
|
|
94
109
|
### qucode.splitMake() //拆分QR码的二维数组 将返回一个对像
|
|
95
|
-
- `all` : 所有数据 `make`
|
|
110
|
+
- `all` : 所有数据 `make` 方法返回的二维点阵相同
|
|
96
111
|
- `data` : 除探测相并数据 的其它数据
|
|
97
112
|
- `allDiscover` : 所有定位,矫正 等数据
|
|
98
113
|
- `positionProbe` : 定位图数据
|
|
@@ -104,4 +119,7 @@ return qucode.make();
|
|
|
104
119
|
```js
|
|
105
120
|
all == data | allDiscover
|
|
106
121
|
allDiscover == positionProbe | positionAdjust | timing
|
|
107
|
-
```
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## 相关应用
|
|
125
|
+
[二维码美化](http://qr.whyoop.com)
|