Я решил проблему, в основном я использовал https://www.nuget.org/packages/ZXing.Net.Bindings.CoreCompat.System.Drawing
Я создаю BarcodeWriter, сгенерированный из следующего пространства имен
ZXing.CoreCompat.System.Drawing
вот мой метод CreateQrCode
public static byte[] CreateQrCode(string content)
{
BarcodeWriter writer = new BarcodeWriter
{
Format = BarcodeFormat.QR_CODE,
Options = new QrCodeEncodingOptions
{
Width = 100,
Height = 100,
}
};
var qrCodeImage = writer.Write(content); // BOOM!!
using (var stream = new MemoryStream())
{
qrCodeImage.Save(stream, ImageFormat.Png);
return stream.ToArray();
}
}
Вот метод чтения QR-кода, возможно, кому-то тоже понадобится.BarcodeReader также генерируется из того же пространства имен, что и create.
Вот метод
public static string ReadQrCode(byte[] qrCode)
{
BarcodeReader coreCompatReader = new BarcodeReader();
using (Stream stream = new MemoryStream(qrCode))
{
using (var coreCompatImage = (Bitmap)Image.FromStream(stream))
{
return coreCompatReader.Decode(coreCompatImage).Text;
}
}
}
Надеюсь, этот ответ защитит чьи-то волосы от натяжения.