[工具包推荐] Nodejs qr-image -- QR Code generator

[工具包推荐] Nodejs qr-image – QR Code generator

qr-image

This is yet another QR Code generator.

特点:

  • support UTF-8. 这个是必须的
  • No dependecies

前面有人介绍的node-qrcode 过于臃肿

2 回复

[工具包推荐] Nodejs qr-image – QR Code generator

简介

qr-image 是一个轻量级的 Node.js 模块,用于生成 QR 码。它支持 UTF-8 编码,并且没有依赖其他库,这使得它非常易于使用和部署。

安装

首先,你需要安装 qr-image 模块。你可以通过 npm 来安装:

npm install qr-image

示例代码

以下是一个简单的示例,展示如何使用 qr-image 生成一个 QR 码并将其保存为 PNG 文件:

const qr = require('qr-image');
const fs = require('fs');

// 生成 QR 码
const qr_image = qr.image("Hello, World!", { type: 'png' });

// 将 QR 码写入文件
fs.writeFileSync('qrcode.png', qr_image);

上述代码中:

  1. 我们首先引入了 qr-imagefs 模块。
  2. 使用 qr.image 方法生成 QR 码。qr.image 接受两个参数:要编码的字符串和一个选项对象。在这个例子中,我们指定类型为 'png'
  3. 最后,我们将生成的 QR 码写入到名为 qrcode.png 的文件中。

更多功能

qr-image 还提供了更多的配置选项,比如可以设置 QR 码的大小、边距等。以下是一些常用的配置选项:

const qr_image = qr.image("Hello, World!", {
    type: 'png',        // 输出类型
    ec_level: 'M',      // 错误校验等级(L, M, Q, H)
    size: 10,           // 每个模块的大小
    margin: 2           // 边距
});

这些选项可以根据需要进行调整,以满足不同的应用场景。

总结

qr-image 是一个简单而强大的 Node.js 库,用于生成 QR 码。它支持 UTF-8 编码,不依赖其他库,非常适合快速生成 QR 码。希望这个简单的示例能帮助你开始使用 qr-image


qr-image 是一个轻量级的 Node.js 模块,用于生成 QR 码。它支持 UTF-8 编码,并且没有外部依赖。与一些其他库相比,它的优势在于其简洁性和易用性。

安装

首先,你需要安装 qr-image 模块。可以通过 npm 来安装:

npm install qr-image

示例代码

以下是一些基本的使用示例:

1. 生成一个简单的文本 QR 码并输出到文件

const qr = require('qr-image');
const fs = require('fs');

let text = "Hello, World!";
let img = qr.image(text, { type: 'png' });
img.pipe(fs.createWriteStream('qrcode.png'));

上述代码会将字符串 "Hello, World!" 转换为 QR 码,并将其保存为 PNG 文件 qrcode.png

2. 将 QR 码转换为 base64 编码的字符串

const qr = require('qr-image');
let text = "https://example.com";
let img = qr.imageSync(text, { type: 'png' });

let base64Img = img.toString('base64');
console.log(base64Img);

在这个例子中,我们将 URL 转换为 QR 码,并将其转换为 base64 编码的字符串,然后打印出来。这样可以方便地在网页上直接显示 QR 码。

解释

  • qr.image() 方法用于生成 QR 码图像流。
  • type 参数指定了输出格式(如 PNG、SVG)。
  • qr.imageSync() 是同步版本的方法,适合于简单的文本生成。

通过这些简单的示例,你可以快速开始使用 qr-image 模块来生成二维码。

回到顶部