コード例 #1
0
        public string GetAsciiQRCode(string text)
        {
            var qrCodeData = _qrCodeGenerator.CreateQrCode(text, QRCodeGenerator.ECCLevel.H);
            var qrCode     = new AsciiQRCode(qrCodeData);

            return(qrCode.GetGraphic(1));
        }
コード例 #2
0
        public Task Install(Wechaty bot)
        {
            bot.OnScan((string qrcode, ScanStatus status, string?data) =>
            {
                if (status == ScanStatus.Waiting || status == ScanStatus.Timeout)
                {
                    const string QrcodeServerUrl = "https://wechaty.github.io/qrcode/";
                    var qrcodeImageUrl           = QrcodeServerUrl + qrcode;
                    Console.WriteLine(qrcodeImageUrl);

                    var generator = new Url(qrcode);
                    var payload   = generator.ToString();

                    var qrGenerator = new QRCodeGenerator();
                    var qrCodeData  = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.M);

                    var qrCodeAsi        = new AsciiQRCode(qrCodeData);
                    var qrCodeAsAsciiArt = qrCodeAsi.GetGraphic(1);
                    Console.WriteLine(qrCodeAsAsciiArt);
                }
            });



            return(Task.CompletedTask);
        }
コード例 #3
0
        public string generateAscii(string value)
        {
            QRCodeGenerator generator = new QRCodeGenerator();
            QRCodeData      codeData  = generator.CreateQrCode(value, QRCodeGenerator.ECCLevel.Q);
            AsciiQRCode     asciiCode = new AsciiQRCode(codeData);

            return(asciiCode.GetGraphic(1));
        }
コード例 #4
0
        public static string GenerateQRCode(string msg)
        {
            //generate QRCode String
            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(msg, QRCodeGenerator.ECCLevel.Q);
            AsciiQRCode     qrCode      = new AsciiQRCode(qrCodeData);

            return(qrCode.GetGraphic(1));
        }
コード例 #5
0
 public string GetQrCodeAsAscii()
 {
     using (var qrGenerator = new QRCodeGenerator())
     {
         var qrCodeData = qrGenerator.CreateQrCode(Code, QRCodeGenerator.ECCLevel.Q);
         using (var qrCode = new AsciiQRCode(qrCodeData))
         {
             return(qrCode.GetGraphic(1));
         }
     }
 }
コード例 #6
0
ファイル: Program.cs プロジェクト: Nojuman/stackup-workshops
        static void ConsoleWriteQRCode(string textToEncode)
        {
            var generator = new QRCodeGenerator();

            var encodedText = generator.CreateQrCode(textToEncode, QRCodeGenerator.ECCLevel.Q);

            using (var qrCode = new AsciiQRCode(encodedText))
            {
                var qrCodeAsAsciiArt = qrCode.GetGraphic(1);
                Console.WriteLine(qrCodeAsAsciiArt);
            }
        }
コード例 #7
0
ファイル: Program.cs プロジェクト: aechan/ezauth
        private static void TestTOTP()
        {
            Console.WriteLine("======================== TOTP Test ========================");
            Console.WriteLine("Creating new user with data:");
            var user = new Models.FakeUser("John", "hunter2", "");

            Console.WriteLine("Username: "******"Password: "******"ezauth_totp_test");

            user.TOTPSecret = totp.SecretKey;

            Console.WriteLine("TOTPSecret: " + user.TOTPSecret);

            Console.WriteLine("\nPlease scan this code into your authenticator: \n");

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(totp.GetOTPURI(), QRCodeGenerator.ECCLevel.M);
            AsciiQRCode     qrCode      = new AsciiQRCode(qrCodeData);

            string qrCodeAsAsciiArt = qrCode.GetGraphic(1, "  ", "██");

            Console.WriteLine(qrCodeAsAsciiArt);

            Console.WriteLine("\nYou now may enter codes from your authenticator to test");
            Console.WriteLine("Enter 'q' to stop.");

            string input;

            Console.Write("> ");
            while ((input = Console.ReadLine()) != "q")
            {
                var res = totp.Validate(user.username, input);
                if (res == AuthResult.VALIDATED)
                {
                    Console.ForegroundColor = ConsoleColor.Green;
                    Console.WriteLine("Valid code!");
                    Console.ForegroundColor = ConsoleColor.White;
                }
                else
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Invalid code");
                    Console.ForegroundColor = ConsoleColor.White;
                }
                Console.Write("> ");
            }
        }
コード例 #8
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode("https://news.ycombinator.com/item?id=111111",
                                                                   QRCodeGenerator.ECCLevel.Q);

            using (var qrCode = new AsciiQRCode(qrCodeData))
            {
                string qrCodeAsAsciiArt = qrCode.GetGraphic(1);
                Console.WriteLine(qrCodeAsAsciiArt);
            }

            Console.WriteLine("Generated QRCode!");
        }
コード例 #9
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode("The text which should be encoded.",
                                                                   QRCodeGenerator.ECCLevel.Q);

            using (var qrCode = new AsciiQRCode(qrCodeData))
            {
                string qrCodeAsAsciiArt = qrCode.GetGraphic(1);
                Console.WriteLine(qrCodeAsAsciiArt);
            }

            Console.WriteLine("Generated QRCode!");
        }
コード例 #10
0
        public async Task QRCodeTerminalAsAscii(string qrCode)
        {
            string qrcodeImageUrl = GetWechatGithubQrCode(qrCode);

            Url    generator = new Url(qrcodeImageUrl);
            string payload   = generator.ToString();

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.L);

            AsciiQRCode qrCodeAsi        = new AsciiQRCode(qrCodeData);
            string      qrCodeAsAsciiArt = qrCodeAsi.GetGraphic(1);

            Console.WriteLine(qrCodeAsAsciiArt);

            await Message.Say("Hello this is come from plugin ");
        }
        public Task <Unit> Handle(GenerateNewQrCodeCommand request, CancellationToken cancellationToken)
        {
            // clear the console for optimum display
            _output.Clear();

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(
                plainText: request.Contents,
                eccLevel: 0
                );
            AsciiQRCode qrCode = new AsciiQRCode(qrCodeData);
            string      render = qrCode.GetGraphic(1);

            _output.Write(render);

            return(Task.FromResult(Unit.Value));
        }
コード例 #12
0
        static void Main()
        {
            string localIP  = "";
            var    hostName = Dns.GetHostName();

            foreach (var item in Dns.GetHostEntry(hostName).AddressList)
            {
                if (item.AddressFamily == AddressFamily.InterNetwork)
                {
                    localIP = item.ToString();
                }
            }

            //TcpListener finds a free port for us, so there is no risk of conflicting with another application
            TcpListener server = new TcpListener(IPAddress.Loopback, 0);

            server.Start();
            string localPort = ((IPEndPoint)server.LocalEndpoint).Port.ToString();

            server.Stop();

            Console.WriteLine("Host:\t\t" + hostName);
            Console.WriteLine("IP Address:\t" + localIP);
            Console.WriteLine("Port:\t\t" + localPort);
            Console.WriteLine();

            var generator = new QRCodeGenerator();
            var data      = generator.CreateQrCode(localIP + ":" + localPort, QRCodeGenerator.ECCLevel.Q);
            var code      = new AsciiQRCode(data);
            var image     = code.GetGraphic(1);

            Console.WriteLine(image);

            Terminal.Build();

            WebHost.CreateDefaultBuilder()
            .UseUrls($"http://{localIP}:{localPort}")
            .UseSetting(WebHostDefaults.SuppressStatusMessagesKey, "true")
            .ConfigureServices(services => services.AddMvc())
            .ConfigureLogging(log => log.ClearProviders())
            .Configure(app => { app.UseMvc(); app.UseCors(c => c.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader()); })
            .Build()
            .Run();
        }
コード例 #13
0
        public void QRCodeTerminalAsAscii()
        {
            WechahtyEvent.Subscribe <EventScanPayload>(async(eventData) =>
            {
                if (eventData.Status == ScanStatus.Waiting || eventData.Status == ScanStatus.Timeout)
                {
                    await Task.Run(() =>
                    {
                        string qrcodeImageUrl = GetWechatGithubQrCode(eventData.Qrcode);

                        Url generator  = new Url(qrcodeImageUrl);
                        string payload = generator.ToString();

                        QRCodeGenerator qrGenerator = new QRCodeGenerator();
                        QRCodeData qrCodeData       = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.L);

                        AsciiQRCode qrCodeAsi   = new AsciiQRCode(qrCodeData);
                        string qrCodeAsAsciiArt = qrCodeAsi.GetGraphic(1);
                        Console.WriteLine(qrCodeAsAsciiArt);
                    });
                }
            });
        }
コード例 #14
0
        public string GetQrCodeAsAscii()
        {
            var qrCode = new AsciiQRCode(_qrCodeData);

            return(qrCode.GetGraphic(1));
        }
コード例 #15
0
ファイル: Program.cs プロジェクト: timapple/QRCoder
        private static void GenerateQRCode(string payloadString, QRCodeGenerator.ECCLevel eccLevel, string outputFileName, SupportedImageFormat imgFormat, int pixelsPerModule, string foreground, string background)
        {
            using (var generator = new QRCodeGenerator())
            {
                using (var data = generator.CreateQrCode(payloadString, eccLevel))
                {
                    switch (imgFormat)
                    {
                    case SupportedImageFormat.Png:
                    case SupportedImageFormat.Jpg:
                    case SupportedImageFormat.Gif:
                    case SupportedImageFormat.Bmp:
                    case SupportedImageFormat.Tiff:
                        using (var code = new QRCode(data))
                        {
                            using (var bitmap = code.GetGraphic(pixelsPerModule, foreground, background, true))
                            {
                                var actualFormat = new OptionSetter().GetImageFormat(imgFormat.ToString());
                                bitmap.Save(outputFileName, actualFormat);
                            }
                        }
                        break;

                    case SupportedImageFormat.Svg:
                        using (var code = new SvgQRCode(data))
                        {
                            var test = code.GetGraphic(pixelsPerModule, foreground, background, true);
                            using (var f = File.CreateText(outputFileName))
                            {
                                f.Write(test);
                                f.Flush();
                            }
                        }
                        break;

                    case SupportedImageFormat.Xaml:
                        using (var code = new XamlQRCode(data))
                        {
                            var test = XamlWriter.Save(code.GetGraphic(pixelsPerModule, foreground, background, true));
                            using (var f = File.CreateText(outputFileName))
                            {
                                f.Write(test);
                                f.Flush();
                            }
                        }
                        break;

                    case SupportedImageFormat.Ps:
                    case SupportedImageFormat.Eps:
                        using (var code = new PostscriptQRCode(data))
                        {
                            var test = code.GetGraphic(pixelsPerModule, foreground, background, true,
                                                       imgFormat == SupportedImageFormat.Eps);
                            using (var f = File.CreateText(outputFileName))
                            {
                                f.Write(test);
                                f.Flush();
                            }
                        }
                        break;

                    case SupportedImageFormat.Ascii:
                        using (var code = new AsciiQRCode(data))
                        {
                            var test  = code.GetGraphic(1);
                            var bytes = Encoding.GetEncoding(866).GetBytes(test);
                            File.WriteAllBytes(outputFileName, bytes);
                        }
                        break;

                    default:
                        throw new ArgumentOutOfRangeException(nameof(imgFormat), imgFormat, null);
                    }
                }
            }
        }