如何在UWP应用程序中生成QR代码?

时间:2016-06-13 18:06:45

标签: c# uwp

我曾尝试为UWP应用程序安装QrCode.net nugget包,但它为我写错误:

using System.Drawing;
using System.Drawing.Imaging;
using System.Windows.Forms;

不存在。

有没有人知道任何UWP应用程序的块包可以帮助我创建和显示从字符串生成的QR码? (UWP / C#)

3 个答案:

答案 0 :(得分:6)

  

有没有人知道任何UWP应用程序的块包可以帮助我创建和显示从字符串生成的QR码? (UWP / C#)

由于您正在开发UWP应用程序,因此可以使用Zxing.Net.Mobile包。安装此软件包后,要生成条形码,您可以参考以下示例:

<Image x:Name="qrcodeImg" Stretch="None" />
代码背后的代码:

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    var write = new BarcodeWriter();
    write.Format = ZXing.BarcodeFormat.QR_CODE;
    var wb = write.Write("BarCode Content");
    this.qrcodeImg.Source = wb;
}

答案 1 :(得分:0)

这是您使用 MVVM模式的方式(基于Grace Feng的方法

<强> XAML

<Image Source="{Binding QRImage, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>

<强>视图模型

// Property
public WriteableBitmap QRImage { get; set; }

// Function to call
private void SetQR()
{
    var options = new QrCodeEncodingOptions()
    {
        DisableECI = true,
        CharacterSet = "UTF-8",
        Width = 1000,
        Height = 1000
    };

    BarcodeWriter writer = new BarcodeWriter();
    writer.Format = BarcodeFormat.QR_CODE;
    writer.Options = options;
    QRImage= writer.Write(SelectedEvent.GetQrString());
}

答案 2 :(得分:0)

2020年答案

另一个选择是使用QRCoder。 github中的一些示例设置。

QRCodeGenerator qrGenerator = new QRCodeGenerator();
QRCodeData qrCodeData = qrGenerator.CreateQrCode("The text which should be encoded.", QRCodeGenerator.ECCLevel.Q);
QRCode qrCode = new QRCode(qrCodeData);
Bitmap qrCodeImage = qrCode.GetGraphic(20);