zoukankan      html  css  js  c++  java
  • 生成一张带有logo的二维码图片

    string url = 二维码内容;
                var qrcode = QRCodeTools.EncodeQrcode(url, 500, 500, Encoding.UTF8);
    
                // 合成活动的LOGO图片
                var hasImage = GlobalTools.GetCommonContent("TG_EVENT_LOGO_IMG", lott.WX_LOTT_TYPE_SEQ, out contentType, out contentLength, out content)//获取后台上传的logo图;
                if (hasImage)
                {
                    var logo = Image.FromStream(new MemoryStream(content));
                    Graphics graph = Graphics.FromImage(qrcode);
                    graph.DrawImage(logo, qrcode.Width / 2.6f, qrcode.Height / 2.6f, 100, 100);
                    graph.Dispose();
                }
    
                Image image;
                using (MemoryStream ms = new MemoryStream())
                {
      #region 压缩二进制图片质量
     EncoderParameters encoderParameters = new EncoderParameters();
                    EncoderParameter encoderParameter = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 50L);//修改此参数,改变生成的图片质量
                    encoderParameters.Param[0] = encoderParameter;
                    ImageCodecInfo[] ImageCodecInfoArray = ImageCodecInfo.GetImageEncoders();
                    ImageCodecInfo jpegImageCodecInfo = null;
                    for (int i = 0; i < ImageCodecInfoArray.Length; i++)
                    {
                        if (ImageCodecInfoArray[i].FormatDescription.Equals("JPEG"))
                        {
                            jpegImageCodecInfo = ImageCodecInfoArray[i];
                            break;
                        }
                    }
                    qrcode.Save(ms, jpegImageCodecInfo, encoderParameters);
      #endregion
                    byte[] buffer = new byte[ms.Length];
                    ms.Seek(0, SeekOrigin.Begin);
                    ms.Read(buffer, 0, buffer.Length);
                    image = System.Drawing.Image.FromStream(ms);
      imgBase64 = Convert.ToBase64String(buffer);//64位二进制图片 }
  • 相关阅读:
    leetcode python翻转字符串里的单词
    leetcode python快乐数
    Usb gadget驱动
    cnblogs的第一篇
    python返回函数+匿名函数+装饰器+偏函数
    1144. 递减元素使数组呈锯齿状
    208. Implement Trie (Prefix Tree)
    3. Longest Substring Without Repeating Characters
    5. Longest Palindromic Substring :manacher
    929. 独特的电子邮件地址
  • 原文地址:https://www.cnblogs.com/stubborn-donkey/p/11646074.html
Copyright © 2011-2022 走看看