Javascript二维码生成器

时间:2013-06-22 18:20:18

标签: javascript qr-code

您是PHP的初学者并学习编写小脚本。我使用ubuntu操作系统并在其上安装了PHP。我在PHP文件中写了一个简单的echo()并声明运行它。我从教程中了解到我应该在localhost上执行它。我做了同样的,但我的文件没有执行,它显示错误404 - 找不到文件。可能发生了什么?

我的PHP代码

<html>
<head>
</head>
<body>
<?php
    echo "learning php";
    echo"<br>";
    echo "I am trying \"quotations\"";
    //just checking how comments work?
?>
</body>
</html>
  • http://localhost/learn.php
  • 执行

o / p:未找到在localhost端口80的服务器apache / 2.2.22 ubuntu服务器上找不到请求的URL /learn.php

我是Javascript编程的初学者,我搜索了桌面应用程序“不需要网络”的javascript QR生成器代码,我在这个网站上找到了这个: http://d-project.googlecode.com/svn/trunk/misc/qrcode/js/qrcode.js

然后我添加了一个函数来调用函数以生成QR图像

var create_qrcode = function(text, typeNumber, errorCorrectLevel, table) {
  var qr = qrcode(typeNumber || 4, errorCorrectLevel || 'M');
  qr.addData(text);
  qr.make();
  //return qr.createTableTag();
  return qr.createImgTag();
}

var t  = create_qrcode("Test QR generate!",4,'M');

然后我拿了返回值并回显它

WScript.Echo(t);

然后有一个t.gif图像被创建但我无法打开它 而我对这样的图像回应感到困惑 另外,如果我没有拨打Wscript.Echo(t),我无法找到保存生成的QR图像的位置?它叫什么名字?

所以,如果有任何可以帮助我并追踪给定的代码或试着告诉我如何调试这个,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

响应 JavaScript QR码位,

  1. 您的QR码未保存,只是存储在内存中
  2. 它所在的格式是HTML <img>的字符串表示形式,其中QR代码设置为 src dataURI
  3. 您的linked script似乎没有提供直接访问此 dataURI Blob 或除<img>字符串之外的任何有用内容的方法
  4. 你真正想用QR码做什么?如果您只想显示它,请以某种方式将其附加到文档中; for example(假设客户端,如果你在node.js中这样做,那么你将不得不使用不同的方法)

    function createNodeQR(text, typeNumber, errorCorrectLevel, table) {
        var qr = qrcode(typeNumber || 4, errorCorrectLevel || 'M'),
            parent = document.createElement('span'), // enable .innerHTML
            img;
        qr.addData(text);
        qr.make();
        parent.innerHTML = qr.createImgTag(); // make client's browser parse
        img = parent.firstChild; // find it
        parent.removeChild(img); // orphan it (optional)
        return img;
    }
    var t  = createNodeQR("Test QR generate!",4,'M');
    console.log(t);     // image node
    console.log(t.src); // data uri only
    

    还记得这只是在记忆中。如果您想通过 JavaScript 保存资源,那么您可以做的就是限制,最简单的方法就是让客户自己完成。

相关问题