QR Code Generator 是一个支持多门编程语言的二维码生成器库,提供 6 种编程语言,功能几乎相同:Java、TypeScript/JavaScript、Python、Rust、C++、C
与同类型的其他库相比,该仓库的代码明显更短但文档注释更多。
功能:
- 根据 QR Code Model 2 标准,支持对所有 40 个版本(大小)和所有 4 个纠错级别进行编码
- 输出格式:QR 符号的原始模块/像素
- 比其他实现更准确地检测类似取景器的惩罚模式
- 可使用比一般文本更少的尺寸对数字和特殊字母数字文本进行编码
示例
下面的代码是用 Java 编写的,但其他语言的设计具有基本相同的 API 命名和行为。
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.List;
import javax.imageio.ImageIO;
import io.nayuki.qrcodegen.*;
// Simple operation
QrCode qr0 = QrCode.encodeText("Hello, world!", QrCode.Ecc.MEDIUM);
BufferedImage img = toImage(qr0, 4, 10); // See QrCodeGeneratorDemo
ImageIO.write(img, "png", new File("qr-code.png"));
// Manual operation
List<QrSegment> segs = QrSegment.makeSegments("3141592653589793238462643383");
QrCode qr1 = QrCode.encodeSegments(segs, QrCode.Ecc.HIGH, 5, 5, 2, false);
for (int y = 0; y < qr1.size; y++) {
for (int x = 0; x < qr1.size; x++) {
(... paint qr1.getModule(x, y) ...)
}
}
评论