ZXing.QrCode.Internal.DataMask Unit

Package: QRCodeReader_FMX
 NameDescription
TDataMask

Encapsulates data masks for the data bits in a QR code, per ISO 18004:2006 6.8. Implementations of this class can un-mask a raw BitMatrix. For simplicity, they will unmask the entire BitMatrix, including areas used for finder patterns, timing patterns, etc. These areas should be unused after the point they are unmasked anyway.

Note that the diagram in section 6.8.1 is misleading since it indicates that i is column position and j is row position. In fact, as the text says, i is row position and j is column position.

TDataMask000

000: mask bits for which (x + y) mod 2 == 0

TDataMask001

001: mask bits for which x mod 2 == 0

TDataMask010

010: mask bits for which y mod 3 == 0

TDataMask011

011: mask bits for which (x + y) mod 3 == 0

TDataMask100

100: mask bits for which (x/2 + y/3) mod 2 == 0

TDataMask101

101: mask bits for which xy mod 2 + xy mod 3 == 0

TDataMask110

110: mask bits for which (xy mod 2 + xy mod 3) mod 2 == 0

TDataMask111

111: mask bits for which ((x+y)mod 2 + xy mod 3) mod 2 == 0

Top