public static Texture2D GenerateQrCode(string _qrCodeKey, QRCodeGenerator.ECCLevel _eccLevel) { InitConst(); using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(_qrCodeKey, _eccLevel)) { using (UnityQRCode qrCode = new UnityQRCode(qrCodeData)) { int size = qrCode.QrCodeData.ModuleMatrix.Count * _pixelsPerModule; _bmp.Resize(size, size); for (int x = 0; x < size; x = x + _pixelsPerModule) { for (int y = 0; y < size; y = y + _pixelsPerModule) { var module = qrCode.QrCodeData.ModuleMatrix[(y + _pixelsPerModule) / _pixelsPerModule - 1][(x + _pixelsPerModule) / _pixelsPerModule - 1]; Rect rect = new Rect(x, y, _pixelsPerModule, _pixelsPerModule); if (module) { _bmp.SetPixels(x, size - y - _pixelsPerModule, (int)rect.width, (int)rect.height, _blackArr); } else { _bmp.SetPixels(x, size - y - _pixelsPerModule, (int)rect.width, (int)rect.height, _whiteArr); } } } } } } _bmp.Apply(); return(_bmp); }
private void RenderQrCode(string TEXT) { QRCodeGenerator.ECCLevel eccLevel = 0; using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(TEXT, eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { var tmp = qrCode.GetGraphic(3, Color.Black, Color.White, GetIconBitmap(), 0); pictureBoxQRCode.BackgroundImage = tmp; pictureBoxQRCode.ToString(); this.pictureBoxQRCode.Size = new System.Drawing.Size(pictureBoxQRCode.Width, pictureBoxQRCode.Height); //Set the SizeMode to center the image. this.pictureBoxQRCode.SizeMode = PictureBoxSizeMode.CenterImage; pictureBoxQRCode.SizeMode = PictureBoxSizeMode.CenterImage; } } } }
private void RenderQrCode(string e) { QRCodeGenerator.ECCLevel eccLevel = QRCodeGenerator.ECCLevel.M; using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(e, eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { pictureBoxQRCode.Invoke(new Action(delegate() { try { pictureBoxQRCode.BackgroundImage = qrCode.GetGraphic(10, Color.Black, Color.White, null, 0, 0, false); this.pictureBoxQRCode.Size = new System.Drawing.Size(pictureBoxQRCode.Width, pictureBoxQRCode.Height); this.pictureBoxQRCode.SizeMode = PictureBoxSizeMode.CenterImage; pictureBoxQRCode.SizeMode = PictureBoxSizeMode.StretchImage; string file = string.Format(@"C:\QR\{0}.jpg", txtBoxQRCode.Text); // Save using (FileStream fs = new FileStream(file, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)) { ImageFormat imageFormat = ImageFormat.Jpeg; pictureBoxQRCode.BackgroundImage.Save(fs, imageFormat); fs.Close(); } } catch (Exception ex) { // Do nothing : clising form } })); } } } }
private async void button_Click(object sender, RoutedEventArgs e) { if (comboBoxECC.SelectedItem != null) { string level = comboBoxECC.SelectedItem.ToString(); QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode("The text which should be encoded.", eccLevel); BitmapByteQRCode qrCode = new BitmapByteQRCode(qrCodeData); byte[] qrCodeImage = qrCode.GetGraphic(20); using (InMemoryRandomAccessStream stream = new InMemoryRandomAccessStream()) { using (DataWriter writer = new DataWriter(stream.GetOutputStreamAt(0))) { writer.WriteBytes(qrCodeImage); await writer.StoreAsync(); } var image = new BitmapImage(); await image.SetSourceAsync(stream); imageViewer.Source = image; } } }
public async Task <IActionResult> qrcode() { string level = "Q"; string url = "342434uiiiiiiiiiiiiiiiiiiiiiiiiiii3放到"; QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(url, eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { Bitmap Image = qrCode.GetGraphic(10, Color.Black, Color.White, GetIconBitmap(), (int)8); var contentRoot = Directory.GetCurrentDirectory(); var webRoot = Path.Combine(contentRoot, "wwwroot"); Image.Save(Path.Combine(webRoot, "twoiconcode.jpg")); } } } ViewBag.iconcode = @"\twoiconcode.jpg"; return(View()); }
private QRCode GetQrCode(string content, QRCodeGenerator.ECCLevel eccLevel, bool forceUtf8 = false, bool utf8BOM = false) { QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(content, eccLevel, forceUtf8, utf8BOM); return(new QRCode(qrCodeData)); }
private string renderQRCode() { string level = comboBoxECC.SelectedIndex.ToString(); QRCodeGenerator.ECCLevel ecl = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); QRCodeGenerator qg = new QRCodeGenerator(); string s; s = clnm.Text + "=\t" + client_name.Text + "\n\n" + opnm.Text + "=\t" + opposite.Text + "\n\n" + C.Text + "=\t" + client_code.Text + "\n\n" + ctyp.Text + "=\t" + case_type.Text + "\n\n" + cnum.Text + "=\t" + case_number.Text + "\n\n" + client_mobile.Text + "=\t" + client_mob.Text + "\n\n" + cadv.Text + "\t" + advcode.Text + "\n\n" + year.Text + "=\t" + case_year.Text; QRCodeData qd = qg.CreateQrCode(s, ecl); QRCode qc = new QRCode(qd); pictureBox1.BackgroundImage = qc.GetGraphic(3, Color.Black, Color.White, getIconBitmap()); image = qc.GetGraphic(3, Color.Black, Color.White, getIconBitmap()); using (MemoryStream ms = new MemoryStream()) { // Convert Image to byte[] image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); byte[] imageBytes = ms.ToArray(); // Convert byte[] to Base64 String string base64String = Convert.ToBase64String(imageBytes); return(base64String); } }
public static byte[] GetQRCode(string txt, QRCodeGenerator.ECCLevel eccLevel, int size) { using (var qrGen = new QRCodeGenerator()) using (var qrCode = qrGen.CreateQrCode(txt, eccLevel)) using (var qrPng = new PngByteQRCode(qrCode)) return(qrPng.GetGraphic(size)); }
public bool CreateQRCode(string str, QRCodeGenerator.ECCLevel eccLevel, System.Drawing.Size size) { if (string.IsNullOrEmpty(str)) { return(false); } _qrdata = QrcodeGenerator.CreateQrCode(str, eccLevel); string svg = ""; if (null != _qrdata) { SvgQRCode svgqrcode = new SvgQRCode(_qrdata); svg = svgqrcode.GetGraphic(size, Color.Black, Color.White); using (var stream = new MemoryStream(Encoding.Default.GetBytes(svg))) { _svg = SvgDocument.Open <SvgDocument>(stream, null); var g = new SvgGroup(); var ls = _svg.Children.ToList(); _svg.Children.Clear(); foreach (var c in ls) { g.Children.Add(c); } _svg.Children.Add(g); } DrawCorner(); } _svg.Write(@"d:\1.svg"); _image = _svg.Draw();// CustomQRCode.QRCode.Util.Svg2Bitmap(_svg); return(true); }
public static byte[] GetQRCode(string txt, QRCodeGenerator.ECCLevel eccLevel, int size) { using (QRCodeGenerator qrGen = new QRCodeGenerator()) using (QRCodeData qrCode = qrGen.CreateQrCode(txt, eccLevel)) using (BitmapByteQRCode qrBmp = new BitmapByteQRCode(qrCode)) return(qrBmp.GetGraphic(size)); }
/// <summary> /// 生成二维码 /// </summary> /// <param name="content"></param> /// <param name="level"></param> /// <param name="pixelsPerModule"></param> /// <returns></returns> public static MemoryStream RenderQrCode(string content, string level, int pixelsPerModule, string iconPath = "") { var stream = new MemoryStream(); QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(content, eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { Bitmap qRCode = null; if (string.IsNullOrEmpty(iconPath)) { qRCode = qrCode.GetGraphic(pixelsPerModule); } else { qRCode = qrCode.GetGraphic(pixelsPerModule, Color.Black, Color.White, new Bitmap(iconPath)); } //pictureBoxQRCode.Size = new System.Drawing.Size(pictureBoxQRCode.Width, pictureBoxQRCode.Height); //Set the SizeMode to center the image. qRCode.Save(stream, ImageFormat.Jpeg); } } } return(stream); }
public static Image GetGenerateQRCode(string txtValue, string level, string iconPath, int iconeSize) { Image img = null; try { QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(txtValue, eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { img = qrCode.GetGraphic(20, Color.Black, Color.White, GetIconBitmap(iconPath), iconeSize); } } } } catch (Exception exc) { ImplementLog.Instance.PutLogMessage(Properties.Settings.Default.MasterDirectory, DateTime.Now.ToLongDateString() + " " + DateTime.Now.ToLongTimeString() + " : Echec de génération du QR Code : " + exc.GetType().ToString() + " : " + " => " + exc.Message, Properties.Settings.Default.MasterDirectory, Properties.Settings.Default.MasterDirectory + Properties.Settings.Default.LogFileName); throw; } return(img); }
public async Task <byte[]> CreateQRAsync(string text) { //if (comboBoxECC.SelectedItem != null) { //Create generator string level = "Q"; QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); //Create raw qr code data QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(text, eccLevel); //Create byte/raw bitmap qr code BitmapByteQRCode qrCodeBmp = new BitmapByteQRCode(qrCodeData); byte[] qrCodeImageBmp = qrCodeBmp.GetGraphic(20, new byte[] { 0, 0, 0 }, new byte[] { 255, 255, 255 }); ////Create byte/raw png qr code //PngByteQRCode qrCodePng = new PngByteQRCode(qrCodeData); //byte[] qrCodeImagePng = qrCodePng.GetGraphic(20, new byte[] { 144, 201, 111 }, new byte[] { 118, 126, 152 }); //QRImage.Source = LoadImage(qrCodeImageBmp); return(qrCodeImageBmp); } }
/// <summary> /// 初始化一个<see cref="QRCoderQrCodeService"/>类型的实例 /// </summary> public QRCoderQrCodeService() { _size = 10; _level = QRCodeGenerator.ECCLevel.L; _logoPath = string.Empty; _foregroundColor = Color.Black; _backgroundColor = Color.White; }
private static QRCode GetQrCode(string text, QRCodeGenerator.ECCLevel eccLevel) { QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(text, eccLevel); QRCode qrCode = new QRCode(qrCodeData); return(qrCode); }
public static void GenerateQRCode(string code, string savePath, QRCodeGenerator.ECCLevel level, int pixelsPerModule) { QRCodeData qrCodeData = qrGenerator.CreateQrCode(code, level); QRCode qrCode = new QRCode(qrCodeData); System.Drawing.Bitmap qrCodeImage = qrCode.GetGraphic(pixelsPerModule); qrCodeImage.Save(savePath, System.Drawing.Imaging.ImageFormat.Jpeg); }
public byte[] Create(string data, QRCodeLevel level, int pixelsPerModule, string darkColorHtmlHex, string lightColorHtmlHex) { QRCodeGenerator.ECCLevel lv = (QRCodeGenerator.ECCLevel)((int)level); var qrcodeData = CreateQrCode(data, lv); BitmapByteQRCode code = new BitmapByteQRCode(qrcodeData); return(code.GetGraphic(pixelsPerModule, darkColorHtmlHex: darkColorHtmlHex, lightColorHtmlHex: lightColorHtmlHex)); }
public byte[] Create(string data, QRCodeLevel level = QRCodeLevel.Q, int pixelsPerModule = 20) { QRCodeGenerator.ECCLevel lv = (QRCodeGenerator.ECCLevel)((int)level); var qrcodeData = CreateQrCode(data, lv); BitmapByteQRCode code = new BitmapByteQRCode(qrcodeData); return(code.GetGraphic(pixelsPerModule)); }
private void batchGenerateQRImage(string ImgDir, QRCodeGenerator.ECCLevel ecc) { System.Drawing.Bitmap logo = SinoCloudWisdomBarCodeGenerator.Properties.Resources.logo; while (ImgFileInd < 50000) { string content = getRandom(range) + barcodeFlagSwitch0; generateQRImage(content, ImgDir, ecc, logo, false, true); } }
public Bitmap GetQR(int pixelsPerModule = 10, QRCodeGenerator.ECCLevel eCCLevel = QRCodeGenerator.ECCLevel.Q) { QRCodeGenerator qrGenerator = new QRCodeGenerator(); var data = ToJson(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(data, eCCLevel); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(pixelsPerModule); return(qrCodeImage); }
private void Produce(string code, PictureBox pic, QRCodeGenerator.ECCLevel level) { QRCodeGenerator qr = new QRCodeGenerator(); QRCodeData data = qr.CreateQrCode(code, level); QRCode qrcode = new QRCode(data); Bitmap qrCodeImage = qrcode.GetGraphic(5, Color.Black, Color.White, null, 15, 6, false); pic.Image = qrCodeImage; }
private void renderQRCode() { string level = comboBoxECC.SelectedItem.ToString(); QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L" ? 0 : level == "M" ? 1 : level == "Q" ? 2 : 3); QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(textBoxQRCode.Text, eccLevel); QRCode qrCode = new QRCode(qrCodeData); pictureBoxQRCode.BackgroundImage = qrCode.GetGraphic(20, Color.Black, Color.White, getIconBitmap(), (int)iconSize.Value); }
public string Create(string text, QRCodeGenerator.ECCLevel value, int pixelsPerModule) { var qrCodeData = Instance.CreateQrCode(text, value); var qrCode = new QRCode(qrCodeData); var bitmap = qrCode.GetGraphic(pixelsPerModule); // This line is the only modified by the provided in the code above. bitmap.Save("C:\\" + text + ".bmp", System.Drawing.Imaging.ImageFormat.Bmp); //I return this string for testing. I guess If removed the text wouldn't work. return("Hello"); }
private static void GenerateQRCode(string payloadString, QRCodeGenerator.ECCLevel eccLevel, string outputFileName, SupportedImageFormat imgFormat, int pixelsPerModule, string foreground, string background) { using (var generator = new QRCodeGenerator()) { using (var data = generator.CreateQrCode(payloadString, eccLevel)) { switch (imgFormat) { case SupportedImageFormat.Png: case SupportedImageFormat.Jpg: case SupportedImageFormat.Gif: case SupportedImageFormat.Bmp: case SupportedImageFormat.Tiff: using (var code = new QRCode(data)) { using (var bitmap = code.GetGraphic(pixelsPerModule, foreground, background, true)) { var actualFormat = new OptionSetter().GetImageFormat(imgFormat.ToString()); bitmap.Save(outputFileName, actualFormat); } } break; case SupportedImageFormat.Svg: using (var code = new SvgQRCode(data)) { var test = code.GetGraphic(pixelsPerModule, foreground, background, true); using (var f = File.CreateText(outputFileName)) { f.Write(test); f.Flush(); } } break; case SupportedImageFormat.Xaml: using (var code = new XamlQRCode(data)) { var test = XamlWriter.Save(code.GetGraphic(pixelsPerModule, foreground, background, true)); using (var f = File.CreateText(outputFileName)) { f.Write(test); f.Flush(); } } break; default: throw new ArgumentOutOfRangeException(nameof(imgFormat), imgFormat, null); } } } }
private void generateQRImage(string content, string ImgDir, QRCodeGenerator.ECCLevel eccLevel, System.Drawing.Bitmap logo = null, bool forceUtf8 = false, bool utf8BOM = false) { QRCode qrCode = GetQrCode(content, eccLevel, forceUtf8, forceUtf8); System.Drawing.Bitmap m_Bitmap = qrCode.GetGraphic(10, System.Drawing.Color.Black, System.Drawing.Color.White, logo, 6, 6, true); if (!Directory.Exists(ImgDir)) { Directory.CreateDirectory(ImgDir); } ImgFileInd++; m_Bitmap.Save(System.IO.Path.Combine(ImgDir, ImgFileInd.ToString("D5") + "-" + content + ".png")); }
private void renderQRCode() { QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)cbLevel.SelectedIndex; QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeData qrCodeData = qrGenerator.CreateQrCode(textBoxQRCode.Text, eccLevel); QRCode qrCode = new QRCode(qrCodeData); int iconSize = (int)numIconSize.Value; int cellSize = (int)numCellSize.Value; int padding = (int)numPadding.Value; pictureBoxQRCode.BackgroundImage = qrCode.GetGraphic(cellSize, Color.Black, Color.White, getIconBitmap(), iconSize, padding); }
public Task <Bitmap> CodeToImage(string text, QRCodeSetting codeSetting) { var codeSettingInternal = codeSetting ?? new QRCodeSetting(); QRCodeGenerator.ECCLevel level = (QRCodeGenerator.ECCLevel)(int) codeSettingInternal.Level; QRCodeData codeData = generator.CreateQrCode(text ?? string.Empty, level, true); using (QRCode qrcode = new QRCode(codeData)) { var bitmap = qrcode.GetGraphic(codeSettingInternal.PixelsPerModule, codeSettingInternal.ForeColor, codeSettingInternal.BackColor, codeSettingInternal.DrawQuietZones); return(Task.FromResult(bitmap)); } }
/// <summary> /// 生成二维码 /// </summary> /// <param name="strToEncode">待编码数据字符串</param> /// <param name="eccLevel">ECC校验等级,L/M/Q/H,默认L</param> /// <param name="pixelsPerModule">每模块像素值,默认20</param> /// <returns>返回Bitmap或异常时为null</returns> public static Bitmap GenerateQrCode(string strToEncode, string eccLevel, int pixelsPerModule) { try { PublicLib.logger.Info("GenerateQrCode:strToEncode=" + strToEncode + ",eccLevel=" + eccLevel + ",pixelsPerModule=" + pixelsPerModule.ToString()); if (pixelsPerModule <= 0) { pixelsPerModule = 20; } QRCodeGenerator qrGenerator = new QRCodeGenerator(); QRCodeGenerator.ECCLevel lvl = QRCodeGenerator.ECCLevel.L; if (eccLevel == "H") { lvl = QRCodeGenerator.ECCLevel.H; } else if (eccLevel == "M") { lvl = QRCodeGenerator.ECCLevel.M; } else if (eccLevel == "Q") { lvl = QRCodeGenerator.ECCLevel.Q; } else { lvl = QRCodeGenerator.ECCLevel.L; } QRCodeData qrCodeData = qrGenerator.CreateQrCode(strToEncode, lvl); QRCode qrCode = new QRCode(qrCodeData); Bitmap qrCodeImage = qrCode.GetGraphic(pixelsPerModule); //Set color by using Color-class types //Bitmap qrCodeImage1 = qrCode.GetGraphic(pixelsPerModule, Color.DarkRed, Color.PaleGreen, true); //Set color by using HTML hex color notation //Bitmap qrCodeImage2 = qrCode.GetGraphic(pixelsPerModule, "#000ff0", "#0ff000"); //The another overload enables you to render a logo/image in the center of the QR code. //Bitmap qrCodeImage3 = qrCode.GetGraphic(pixelsPerModule, Color.Black, Color.White, (Bitmap)Bitmap.FromFile("C:\\myimage.png")); return(qrCodeImage); } catch (Exception ex) { PublicLib.logger.Error("qrCode->GenerateQrCode:" + ex.Message); return(null); } }
public FileResult Get() { QRCodeGenerator.ECCLevel eccLevel = QRCodeGenerator.ECCLevel.L; using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode("Hello .NET Core", eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { Bitmap bp = qrCode.GetGraphic(20, Color.Black, Color.White, true); return(File(Bitmap2Byte(bp), "image/png", "hello-dotnetcore.png")); } } } }
/// <summary> /// 渲染二维码 /// </summary> /// <param name="str"></param> /// <returns></returns> private Bitmap RenderQrCode(string str) { QRCodeGenerator.ECCLevel eccLevel = QRCodeGenerator.ECCLevel.L; using (QRCodeGenerator qrGenerator = new QRCodeGenerator()) { using (QRCodeData qrCodeData = qrGenerator.CreateQrCode(str, eccLevel)) { using (QRCode qrCode = new QRCode(qrCodeData)) { Bitmap bp = qrCode.GetGraphic(20, Color.Black, Color.White, new Bitmap(Path.Combine(_hostingEnvironment.WebRootPath, "images/alipay.png")), 15); return(bp); } } } }