js生成二维码和解析二维码

这篇具有很好参考价值的文章主要介绍了js生成二维码和解析二维码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

这个整了好久,用的包换了好几次,所以记录一下

生成二维码

  <div class="container">
    <div class="row">
      <div class="col-md-6 mx-auto my-5">
        <form class="text-center">
          <div class="form-group">
            <label for="message">Enter message:</label>
            <textarea class="form-control" id="message" name="message" rows="5" placeholder="Type your message here"></textarea>
          </div>
          <button type="button" class="btn btn-primary" onclick="generateQRCode()">Generate QR Code</button>
        </form>
        <div id="qrcode" class="mt-4"></div>
      </div>
    </div>
  </div>

  <script src="/js/qrcode.min.js"></script>
  <script>
    function generateQRCode() {
      var message = document.getElementById("message").value;
      var qrcode = new QRCode(document.getElementById("qrcode"), {
        text: message,
        width: 256,
        height: 256,
        colorDark: "#000000",
        colorLight: "#ffffff",
        correctLevel: QRCode.CorrectLevel.H
      });
    }

  </script>

解析二维码


  <div class="container">
    <div class="row">
      <div class="col-md-6 mx-auto my-5">
        <form class="text-center">
                <input type="file" id="uploadInput" accept="image/*">
            
              </form>
              <div id="result"></div>
        </form>
        <div id="qrcode" class="mt-4"></div>
      </div>
    </div>
  </div>
  




    <script src="js/reqrcode.js"></script>

  <script>
    const form = document.getElementById('uploadForm');
    const input = document.getElementById('uploadInput');
    input.onchange = function () {
        // files[0]是通过input file上传的二维码图片文件
        qrcode.decode(getObjectURL(this.files[0]));
        qrcode.callback = function (imgMsg) {
        	//imgMsg 就是解析后的路径
            document.getElementById('result').innerText = decodeStr(imgMsg);
        }
    }

    //获取预览图片路径
    var getObjectURL = function (file) {
        let url = null;
        if (window.createObjectURL != undefined) { // basic
            url = window.createObjectURL(file);
        } else if (window.URL != undefined) { // mozilla(firefox)
            url = window.URL.createObjectURL(file);
        } else if (window.webkitURL != undefined) { // webkit or chrome
            url = window.webkitURL.createObjectURL(file);
        }
        return url;
    }

    function decodeStr(str) {
            var out, i, len, c;
            var char2, char3;
            out = "";
            len = str.length;
            i = 0;
            while (i < len) {
                c = str.charCodeAt(i++);
                switch (c >> 4) {
                    case 0:
                    case 1:
                    case 2:
                    case 3:
                    case 4:
                    case 5:
                    case 6:
                    case 7:
                        // 0xxxxxxx
                        out += str.charAt(i - 1);
                        break;
                    case 12:
                    case 13:
                        // 110x xxxx 10xx xxxx
                        char2 = str.charCodeAt(i++);
                        out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
                        break;
                    case 14:
                        // 1110 xxxx 10xx xxxx 10xx xxxx
                        char2 = str.charCodeAt(i++);
                        char3 = str.charCodeAt(i++);
                        out += String.fromCharCode(((c & 0x0F) << 12) |
                            ((char2 & 0x3F) << 6) |
                            ((char3 & 0x3F) << 0));
                        break;
                }
            }
            return out;
        }

  </script>

然后是两个引入的js
reqrcode和qrcode文章来源地址https://www.toymoban.com/news/detail-407872.html

到了这里,关于js生成二维码和解析二维码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包