C#-基于QrCode制作健康码

讲故事

因为疫情的原因,无论是进入商场还是医院、车站,都需要出示健康码。于是我想到了使用C#来制作我们的健康码。

安装

由于要制作二维码,我不得不想到C#中我常用的QrCode开源库,是一个纯C#开源二维码实现的 地址:https://github.com/codebude/QRCoder Nuget控制台:Install-Package QRCoder.

教程

使用QrCode,我们只需要五行代码即可生成并查看您的第一个二维码。

   QRCodeGenerator qrGenerator = new QRCodeGenerator();
   QRCodeData qrCodeData = qrGenerator.CreateQrCode("这是我的第一张二维码", QRCodeGenerator.ECCLevel.Q);
   QRCode qrCode = new QRCode(qrCodeData);
  Bitmap qrCodeImage = qrCode.GetGraphic(20);
  qrCodeImage.Save("1.png");

C#-基于QrCode制作健康码

虽然生成了第一个二维码,但是和我们的要求有点远。我们想要的是健康码,健康码现在是分为绿色和红色。那我们就以绿色为例,来生成我们绿色健康码,作为一个很成熟的开源库,做个绿色二维码还是很简单的,我们可以查看GetGraphics方法,他有很多重载方法, 一种使用颜色类类型,另一种使用 HTML 十六进制颜色表示法。我们稍微调整一下刚才的代码

     QRCodeGenerator qrGenerator = new QRCodeGenerator();
     QRCodeData qrCodeData = qrGenerator.CreateQrCode("这是我的第一张二维码", QRCodeGenerator.ECCLevel.Q);
     QRCode qrCode = new QRCode(qrCodeData);
     Bitmap qrCodeImage = qrCode.GetGraphic(20,Color.Green, Color.White, true);
     qrCodeImage.Save("1.png");

C#-基于QrCode制作健康码

这样我们就生成了我们的绿码,当然红码也一样!其它地区我不太清楚,杭州这边健康码上可以看到你的新冠疫苗接种情况,那我们能不能在我们的绿码上添加我们的新冠疫苗接种Logo呢?当然也是可以的!另一个重载能够在二维码上的中心呈现徽标/图像!代码如下

        QRCodeGenerator qrGenerator = new QRCodeGenerator();
        QRCodeData qrCodeData = qrGenerator.CreateQrCode("这是我的第一张二维码", QRCodeGenerator.ECCLevel.Q);
       QRCode qrCode = new QRCode(qrCodeData);
       Bitmap qrCodeImage = qrCode.GetGraphic(20,Color.Green, Color.White, (Bitmap)Bitmap.FromFile("Logo.jpeg"));
      qrCodeImage.Save("1.png");

C#-基于QrCode制作健康码

这样我们就完成了我们的健康码的制作了!

总结

文章来源于生活中的点点滴滴,大家要是有更好的制作方式,欢迎交流,独乐乐不如众乐乐,本篇就说到这里啦,希望对您有帮助。