iTextSharp.text.pdf.qrcode.Encoder.AppendNumericBytes C# (CSharp) Method

AppendNumericBytes() static private method

static private AppendNumericBytes ( String content, BitVector bits ) : void
content String
bits BitVector
return void
        static void AppendNumericBytes(String content, BitVector bits) {
            int length = content.Length;
            int i = 0;
            while (i < length) {
                int num1 = content[i] - '0';
                if (i + 2 < length) {
                    // Encode three numeric letters in ten bits.
                    int num2 = content[i + 1] - '0';
                    int num3 = content[i + 2] - '0';
                    bits.AppendBits(num1 * 100 + num2 * 10 + num3, 10);
                    i += 3;
                }
                else if (i + 1 < length) {
                    // Encode two numeric letters in seven bits.
                    int num2 = content[i + 1] - '0';
                    bits.AppendBits(num1 * 10 + num2, 7);
                    i += 2;
                }
                else {
                    // Encode one numeric letter in four bits.
                    bits.AppendBits(num1, 4);
                    i++;
                }
            }
        }