iTextSharp.text.pdf.qrcode.MatrixUtil.BuildMatrix C# (CSharp) Method

BuildMatrix() public static method

public static BuildMatrix ( BitVector dataBits, ErrorCorrectionLevel ecLevel, int version, int maskPattern, ByteMatrix matrix ) : void
dataBits BitVector
ecLevel ErrorCorrectionLevel
version int
maskPattern int
matrix ByteMatrix
return void
        public static void BuildMatrix(BitVector dataBits, ErrorCorrectionLevel ecLevel, int version,
            int maskPattern, ByteMatrix matrix) {
            ClearMatrix(matrix);
            EmbedBasicPatterns(version, matrix);
            // Type information appear with any version.
            EmbedTypeInfo(ecLevel, maskPattern, matrix);
            // Version info appear if version >= 7.
            MaybeEmbedVersionInfo(version, matrix);
            // Data should be embedded at end.
            EmbedDataBits(dataBits, maskPattern, matrix);
        }

Usage Example

コード例 #1
0
        private static int ChooseMaskPattern(BitVector bits, ErrorCorrectionLevel ecLevel, int version,
                                             ByteMatrix matrix)
        {
            var minPenalty      = int.MaxValue; // Lower penalty is better.
            var bestMaskPattern = -1;

            // We try all mask patterns to choose the best one.
            for (var maskPattern = 0; maskPattern < QRCode.NUM_MASK_PATTERNS; maskPattern++)
            {
                MatrixUtil.BuildMatrix(bits, ecLevel, version, maskPattern, matrix);
                var penalty = CalculateMaskPenalty(matrix);
                if (penalty < minPenalty)
                {
                    minPenalty      = penalty;
                    bestMaskPattern = maskPattern;
                }
            }
            return(bestMaskPattern);
        }
All Usage Examples Of iTextSharp.text.pdf.qrcode.MatrixUtil::BuildMatrix