首页 / 工具 / 二维码生成

二维码生成

不依赖任何二维码库:本页自己实现 QR 编码(字节模式、纠错等级 L/M/Q/H、版本 1–10 自适应),尺寸、边距与配色可调,可导出 PNG 或 SVG。所有计算都在你的浏览器里完成。

· 等待输入

内容
输出(SVG 源码)

预览

—
渲染结果
模块矩阵

编码信息

—
版本
—
模块边长
—
纠错等级
—
内容字节
—
数据码字 / 纠错码字
—
纠错块
—
容量占用
—

几点说明

  • 数据不出浏览器 · 零网络请求 · 可断网可用。
  • QR 编码器是本页用原生 JavaScript 写的:伽罗瓦域 GF(256) 上的 Reed–Solomon 纠错、掩码惩罚评分、格式信息 BCH(15,5)、版本信息 BCH(18,6) 全部自己算,没有引入任何第三方库。
  • 只实现字节模式(byte mode),内容先按 UTF-8 编码成字节,因此中文、表情、任意二进制文本都能装进去;数字与字母不会走更省位的数字/字母数字模式。
  • 版本范围 1–10(21×21 到 57×57)。「自动」会挑能装下的最小版本;固定版本装不下时给出明确提示,并告诉你当前等级下的最大字节数。
  • 纠错等级越高越抗污损,但可装的内容越少:同一版本下 H 的容量大约只有 L 的三分之一。日常链接用 M,需要印在易磨损的表面用 Q 或 H。
  • 导出 PNG 走 canvas.toDataURL(),导出 SVG 直接拼字符串 —— 两条路径都不产生任何请求。SVG 是矢量输出,印刷或放大时比 PNG 更清楚。
  • 前景与背景对比度太低(例如浅灰配白)会让很多扫码器读不出来,选色时请保持足够的明暗差。