public static bool IsUnicode(byte[] byteData)
        {
            string str  = QRCodeUtility.FromASCIIByteArray(byteData);
            string str2 = QRCodeUtility.FromUnicodeByteArray(byteData);

            byte[] array  = QRCodeUtility.AsciiStringToByteArray(str);
            byte[] array2 = QRCodeUtility.UnicodeStringToByteArray(str2);
            return(array[0] != array2[0]);
        }
        public static bool IsUniCode(string value)
        {
            byte[] characters  = QRCodeUtility.AsciiStringToByteArray(value);
            byte[] characters2 = QRCodeUtility.UnicodeStringToByteArray(value);
            string a           = QRCodeUtility.FromASCIIByteArray(characters);
            string b           = QRCodeUtility.FromUnicodeByteArray(characters2);

            return(a != b);
        }
        public virtual Bitmap Encode(string content)
        {
            Bitmap result;

            if (QRCodeUtility.IsUniCode(content))
            {
                result = this.Encode(content, Encoding.Unicode);
            }
            else
            {
                result = this.Encode(content, Encoding.ASCII);
            }
            return(result);
        }