📝 博客 · 2026-07-29 · ⏱ 6 分钟

二维码的工作原理(扫盲版)

用通俗语言讲清楚二维码的结构、定位原理、纠错机制和容量限制,零基础也能看懂。

一、二维码是什么

二维码(2D Barcode)是用黑白方块按一定规则排列、用来存储信息的图形。我们日常扫的"二维码"绝大多数都是 QR Code(Quick Response Code,快速响应码),它是二维码中最流行的一种。

和传统的一维条形码相比,二维码的优势很明显:

维度一维条形码二维码(QR)
存储方向横向一维横纵两维
容量几十个字符几千字符
类型主要是数字数字、字母、汉字、二进制
纠错基本无有,最多可恢复 30% 数据
读取速度一般快(任意角度都能扫)

二、二维码的诞生

二维码的故事开始于 1994 年的日本。当时丰田旗下的电装公司(Denso Wave)在汽车制造流水线上遇到一个难题:传统的条形码容量太小,工人需要扫描多张条码才能识别一个零件,效率很低。

公司工程师原昌弘带领团队花了一年多时间,设计出了一种新的二维编码方案,能在一秒内被读取,还能容纳几百倍于条形码的数据。这就是 QR Code。

电装公司做了一个非常关键的决定:宣布放弃 QR Code 的专利权,允许任何人免费使用。这一决定直接推动了二维码在全世界的普及。

三、二维码的结构

把一张二维码放大看,你会发现它不是一堆随机方块,而是有清晰分区的。下面是 QR Code 的主要组成部分:

区域位置作用
定位点左上、右上、左下三个大方块,让扫描器快速定位二维码
校准点右下偏内较小的方块,用于校正扭曲和倾斜
时序图样定位点之间的连线黑白交替的线,用于确定模块大小
格式信息定位点周围记录纠错级别和掩码方案
数据区中间所有剩余区域真正存储内容的地方
纠错码数据区里混在一起用于损坏时恢复数据
静默区最外圈一圈空白帮助扫描器区分二维码和背景

三个定位点是 QR Code 最显眼的标志——三个角各一个,第四个角没有,正是这个特征让扫描器能瞬间判断"这是一张 QR Code"以及它旋转了多少度。

四、定位原理:为什么扫得这么快

QR Code 名字里的 "Quick" 不是白叫的。它能在 0.1 秒内被识别,主要依赖三个设计:

  1. 三个定位点:构成一个等腰直角三角形,扫描器只要找到这三个点,就能确定二维码的位置、大小和旋转角度,连倾斜的二维码也能扫。
  2. 静默区:定位点外围至少要留 4 个模块宽度的空白,让算法能一眼把它从背景里"抠"出来。
  3. 掩码:数据区会被一个掩码图样异或一遍,避免出现大面积的纯黑或纯白区域,这样扫描器更容易识别模块边界。

五、纠错级别:为什么破损还能扫

QR Code 内置了 Reed-Solomon 纠错算法。简单说就是:编码时除了存原始数据,还额外存一部分冗余的校验数据。当二维码被划伤、被遮挡、被污损时,扫描器可以用这些校验数据把丢失的部分"算"回来。

QR Code 有四个纠错级别:

级别名称可恢复数据比例适用场景
LLow约 7%干净环境,追求容量
MMedium约 15%一般场景(默认)
QQuartile约 25%工业环境
HHigh约 30%易脏污环境、Logo 中间镂空

这就是为什么很多二维码中间挖一个洞放 Logo 还能扫——因为用了 H 级别纠错,最多能容忍 30% 的数据丢失。

六、容量限制

QR Code 的容量和版本、纠错级别、字符类型都有关。版本从 1 到 40,每升一个版本,边长增加 4 个模块,从 21x21 到 177x177。

以最常用的 Version 10 为例,不同字符类型的容量大约是:

数据类型容量(L 级别)
数字约 652 个
字母数字约 395 个
字节约 271 个
汉字约 181 个

注意几点:

  1. 汉字占的字节数多,所以容量看起来比英文小很多。
  2. 纠错级别越高,可用容量越小,因为要留位置给校验码。
  3. 不是越大越好,Version 40 的二维码虽然容量大,但手机摄像头要拍清楚全部模块反而困难,实际识别率会下降。

日常使用中,链接类二维码通常在 Version 3-7 之间,加上 M 级别纠错,是兼容性和识别率最好的组合。

七、为什么扫码能跳转网页

这其实是个常见的误解:二维码本身并不"跳转",它存的就是一段文本。跳转是手机系统做的事。

流程是这样的:

  1. 你打开相机或扫码 App,扫描二维码
  2. App 识别出二维码里存的是 https://example.com
  3. App 判断这是一段 URL,弹出"是否打开"
  4. 你点确认,浏览器打开这个网址

所以二维码里可以放任何文本:网址、WiFi 密码、名片信息(vCard)、支付链接、纯文本……只要扫描端能理解对应格式,就能做出相应的动作。

下面是一个 WiFi 二维码的内容示例,扫码后手机会自动连接 WiFi:

WIFI:T:WPA;S:MyHomeWiFi;P:password123;;

八、实践推荐

了解了原理之后,日常生成二维码的场景非常多——产品包装、PPT 分享、活动报名、WiFi 分享等等。在线生成工具是最省事的方式:

支持文本、链接、WiFi、名片等多种内容,可以自定义大小、纠错级别,还能在中间放 Logo(自动用 H 级别纠错保证可扫)。生成后直接下载高清 PNG,打印或贴到任何地方都没问题。