Exemplo n.º 1
0
        /// <summary>
        ///     Display Qrcode for user interaction
        /// </summary>
        /// <param name="qrCodeData">QrCodeData is Create by QRCodeGenerator.CreateQrCode</param>
        /// <param name="qrCodeOutputType">Choose output to console or show as png</param>
        /// <returns></returns>
        protected async Task ShowQRCode(QRCodeData qrCodeData, QRCodeOutputType qrCodeOutputType)
        {
            if (qrCodeOutputType.HasFlag(QRCodeOutputType.TTY))
            {
                await _consoleWriter.WriteToConsoleAsync(qrCodeData.ModuleMatrix);
            }

            if (qrCodeOutputType.HasFlag(QRCodeOutputType.PNG))
            {
                var qrCodePath  = _fileManager.GetTempFilePath("wxqr.png");
                var qrCodeImage = new QRCode(qrCodeData).GetGraphic(10);
                qrCodeImage.Save(qrCodePath);

                await Task.Run(() => Process.Start(qrCodePath));
            }
        }
Exemplo n.º 2
0
        public async Task ShowQRCode(string uuid, QRCodeOutputType qrCodeOutputType)
        {
            var loginQRCode = GenerateLoginQRCode(uuid);

            await ShowQRCode(loginQRCode, qrCodeOutputType);
        }