mirror of
http://36.133.248.69:3088/admin/RentWeAppFront.git
synced 2026-03-14 04:42:28 +08:00
init
This commit is contained in:
43
node_modules/qrcode/lib/core/numeric-data.js
generated
vendored
Normal file
43
node_modules/qrcode/lib/core/numeric-data.js
generated
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
const Mode = require('./mode')
|
||||
|
||||
function NumericData (data) {
|
||||
this.mode = Mode.NUMERIC
|
||||
this.data = data.toString()
|
||||
}
|
||||
|
||||
NumericData.getBitsLength = function getBitsLength (length) {
|
||||
return 10 * Math.floor(length / 3) + ((length % 3) ? ((length % 3) * 3 + 1) : 0)
|
||||
}
|
||||
|
||||
NumericData.prototype.getLength = function getLength () {
|
||||
return this.data.length
|
||||
}
|
||||
|
||||
NumericData.prototype.getBitsLength = function getBitsLength () {
|
||||
return NumericData.getBitsLength(this.data.length)
|
||||
}
|
||||
|
||||
NumericData.prototype.write = function write (bitBuffer) {
|
||||
let i, group, value
|
||||
|
||||
// The input data string is divided into groups of three digits,
|
||||
// and each group is converted to its 10-bit binary equivalent.
|
||||
for (i = 0; i + 3 <= this.data.length; i += 3) {
|
||||
group = this.data.substr(i, 3)
|
||||
value = parseInt(group, 10)
|
||||
|
||||
bitBuffer.put(value, 10)
|
||||
}
|
||||
|
||||
// If the number of input digits is not an exact multiple of three,
|
||||
// the final one or two digits are converted to 4 or 7 bits respectively.
|
||||
const remainingNum = this.data.length - i
|
||||
if (remainingNum > 0) {
|
||||
group = this.data.substr(i)
|
||||
value = parseInt(group, 10)
|
||||
|
||||
bitBuffer.put(value, remainingNum * 3 + 1)
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = NumericData
|
||||
Reference in New Issue
Block a user