二维码 生成器
输入文本或 URL 即时生成二维码,支持自定义颜色、尺寸和容错级别,可下载 PNG 和 SVG。所有处理在浏览器本地完成。
Text / URL
尺寸
容错级别
Preview
⬆
这个工具有帮到你吗?
什么是 QR 码
QR 码(Quick Response Code)是 1994 年由日本电装公司发明的二维条码,可存储数字、字母、中文、二进制等多种数据。相比传统条形码,QR 码容量更大(最多 7089 个数字)、支持 360 度任意方向扫描、且具有纠错能力,即使部分损坏仍可读取。
QR 码的应用场景
移动支付(微信/支付宝扫码)、网站链接分享(比手动输入 URL 快得多)、名片信息传递(vCard)、WiFi 密码分享、产品溯源和防伪、电子票务(电影票/登机牌)、线下到线上导流(海报扫码关注公众号)。QR 码已经成为连接物理世界和数字世界的桥梁。
用代码生成二维码
JavaScript
// Generate QR code with qrcode library
import QRCode from 'qrcode';
// To canvas
await QRCode.toCanvas(canvasEl, 'https://deepinto.top', {
width: 256,
margin: 2,
color: { dark: '#000000', light: '#ffffff' },
errorCorrectionLevel: 'M',
});
// To data URL
const dataUrl = await QRCode.toDataURL('Hello World');
// Use as <img src={dataUrl} />
// To SVG string
const svg = await QRCode.toString('Hello', { type: 'svg' });Python
# pip install qrcode[pil]
import qrcode
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_H,
box_size=10,
border=2,
)
qr.add_data('https://deepinto.top')
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
img.save("qrcode.png")常见问题
- 什么是 QR 码容错级别?
- 容错级别决定 QR 码在部分损坏时仍能被正确扫描的能力。L 级(7%)最小,H 级(30%)最强。如果 QR 码会被打印或可能被遮挡,建议使用 Q 或 H 级别。高级别会生成更密集的图案。
- QR 码最多能存多少文字?
- QR 码最大容量取决于容错级别和字符类型。纯数字最多 7089 个,字母数字最多 4296 个,二进制/中文最多 2953 个字节。本工具会在超出容量时提示错误。
- 生成的 QR 码安全吗?
- 所有 QR 码生成完全在浏览器中使用 Canvas API 完成,数据不会上传到任何服务器。你可以在离线状态下放心使用。
- PNG 和 SVG 格式有什么区别?
- PNG 是位图格式,放大后会模糊,适合屏幕显示和社交媒体分享。SVG 是矢量格式,无限放大不失真,适合印刷和高分辨率场景。建议打印时使用 SVG 格式。
- 可以用自定义 Logo 吗?
- 当前版本不支持嵌入 Logo,但你可以使用 H 级容错(30%),然后在外部用图片编辑器将 Logo 覆盖在 QR 码中心区域。H 级容错允许最多 30% 的面积被遮挡仍可扫描。
- 为什么扫描不出来?
- 常见原因:前景色和背景色对比度太低(建议使用黑白配色)、QR 码太小或分辨率太低、容错级别太低(L 级)、数据超出容量限制。尝试增大尺寸或提高容错级别。