QR Code 現在可說是隨處可見了,商家想要推廣自家網站,不必再印網址在廣告上,只要附上 QR Code 圖片,民眾只要用手機一掃就能直接連到網站。產生的工具隨處可見,但身為工程師,一定會遇到要自己寫程式產生 QR Code 的情境,這時就可以使用 ZXing.NET。QR Code 或是超市常見的條碼都能透過它來產生。

在這裡以 ASP.NET 網站來做示範:

[HttpGet]
public IActionResult GetCode()
{
    QrCodeEncodingOptions options = new()
    {
        DisableECI = true,
        CharacterSet = "UTF-8",
        Width = 500,
        Height = 500
    };
    BarcodeWriter writer = new()
    {
        Format = BarcodeFormat.QR_CODE,
        Options = options
    };
    string url = "https://www.youtube.com/watch?v=dQw4w9WgXcQ";
    Bitmap qrCodeBitmap = writer.Write(url);

    var stream = new MemoryStream();
    qrCodeBitmap.Save(stream, System.Drawing.Imaging.ImageFormat.Png);
    var array = stream.ToArray();

    return File(array, "image/png");
}

程式碼很短,大致上就是產生 BarcodeWriter 物件,然後透過把文字資訊轉為 QR Code 圖片,要注意的是,此程式碼只能在 Windows 上執行。

最後,附近我測試的結果:

參考資料