using QRCoder; using System.Drawing; using System.IO; namespace JiaZhiQuan.Common.Utils { /// /// 二维码生成工具类 /// public class GenerateQRCodeUtils { /// /// 生成二维码 /// 默认生成白底黑块的二维码 /// /// /// /// 像素大小 public static void GenerateQRCode(string text, string outputPath, int pixel = 5) { QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(text, QRCodeGenerator.ECCLevel.Q); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(pixel, Color.Black, Color.White, true); qrCodeImage.Save(outputPath, System.Drawing.Imaging.ImageFormat.Png); } /// /// 生成二维码,返回内存流(记得关闭流!!!) /// 默认生成白底黑块的二维码 /// /// /// 像素大小 /// public static MemoryStream GenerateQRCode(string text, int pixel = 5) { QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(text, QRCodeGenerator.ECCLevel.Q); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(pixel, Color.Black, Color.White, true); MemoryStream memoryStream = new MemoryStream(); qrCodeImage.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Png); return memoryStream; } } }