iTextSharp.text.pdf.qrcode.Encoder.ChooseMaskPattern C# (CSharp) Метод

ChooseMaskPattern() приватный статический Метод

private static ChooseMaskPattern ( BitVector bits, ErrorCorrectionLevel ecLevel, int version, ByteMatrix matrix ) : int
bits BitVector
ecLevel ErrorCorrectionLevel
version int
matrix ByteMatrix
Результат int
        private static int ChooseMaskPattern(BitVector bits, ErrorCorrectionLevel ecLevel, int version,
            ByteMatrix matrix) {

            int minPenalty = int.MaxValue;  // Lower penalty is better.
            int bestMaskPattern = -1;
            // We try all mask patterns to choose the best one.
            for (int maskPattern = 0; maskPattern < QRCode.NUM_MASK_PATTERNS; maskPattern++) {
                MatrixUtil.BuildMatrix(bits, ecLevel, version, maskPattern, matrix);
                int penalty = CalculateMaskPenalty(matrix);
                if (penalty < minPenalty) {
                    minPenalty = penalty;
                    bestMaskPattern = maskPattern;
                }
            }
            return bestMaskPattern;
        }