Generator QrCode dla .Net6

0

Chej próbuje znaleźć jakąś sensowną bibliotekę do tworzenie w aplikacji QrCodów

Poprzednio uŻywałem BarCode ale licencja jest zbyt droga.

Teraz testuje CrCoder ale mam problem
https://github.com/codebude/QRCoder/wiki

QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("The text which should be encoded.", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData); // <---- ta linijka krzyczy, że nie znaleziono obiektu. 
Bitmap qrCodeImage = qrCode.GetGraphic(20);

Ale jeśli dobrze widzę w ich opisie posiadają kalsę zwracającą obraz. Czy coś mi umyka albo znacie lepsze rozwiązanie.
screenshot-20221209114055.png

A to prawdopodobna przyczyna czemu mi nie działa :/
screenshot-20221209115517.png

0

Tam w tej dokumentacji dalej mają napisane też, że jest sobie renderer PngByteQRCode i działa dla .NET 6 oraz .NET 6-windows. Jak rozumiem jest to tablica zawierajaca PNG – musisz konkretnie mieć System.Drawing.Bitmap? Co chcesz dalej z tym zrobić, jak wyświetlać, jaka to jest aplikacja (ASP.NET, WPF, MAUI?)?

1

https://www.nuget.org/packages/ZXing.Net/#readme-body-tab
Kod źródłowy
W zakładce "frameworks" na NuGet jest wymienione .NET 6.0

0
Ktos napisał(a):

Tam w tej dokumentacji dalej mają napisane też, że jest sobie renderer PngByteQRCode i działa dla .NET 6 oraz .NET 6-windows. Jak rozumiem jest to tablica zawierajaca PNG – musisz konkretnie mieć System.Drawing.Bitmap? Co chcesz dalej z tym zrobić, jak wyświetlać, jaka to jest aplikacja (ASP.NET, WPF, MAUI?)?

ASP.NET

Bitmap był mi potrzebny bo ta biblioteka tak w przykładach generowała ten QrCode a następnie zmieniała go w obraz dopiero

1

@AdamAdam_MF:
U mnie działa w tej formie (.NET 6):

        private static Bitmap GenerateQrCodeAndCreateBitmap(string value)
        {
            var qrCodeData = GenerateQrCode(value);
            var qrCodeAsBitmapByteArr = ConvertQrCodeToBytes(qrCodeData);

            using var ms = new MemoryStream(qrCodeAsBitmapByteArr);
            var bmp = new Bitmap(ms);
            return bmp;
        }

        private static QRCodeData GenerateQrCode(string value)
        {
            var qrGenerator = new QRCodeGenerator();
            var qrCodeData = qrGenerator.CreateQrCode(value, QRCodeGenerator.ECCLevel.H);
            return qrCodeData;
        }

        private static byte[] ConvertQrCodeToBytes(QRCodeData qrCodeData)
        {
            var qrCode = new BitmapByteQRCode(qrCodeData);
            var qrCodeAsBitmapByteArr = qrCode.GetGraphic(20);
            return qrCodeAsBitmapByteArr;
        }

        

1 użytkowników online, w tym zalogowanych: 0, gości: 1