像素艺术二维码的设计原理:如何在码里画画而不弄坏它

二维码本身就是像素画:一张深浅方块组成的网格。正是这个巧合,让我们可以把笑脸、星星、甚至DEMO你好 这样的文字画进一张能正常扫描的码里。但这张网格并不是 随意涂抹的画布 —— 有些方块是承重墙。本文从二维码标准讲起:设计师到底能动哪些像素、图案最大能画多大、 哪些配色是安全的、以及付印之前如何证明它真的能扫。下面所有样例都由免费的HonestQR 像素艺术码生成器真实生成,发布前逐一经过机器解码验证。

画有笑脸图标的像素艺术二维码,扫描后指向本文码内写有像素字母 DEMO 的像素艺术二维码码内写有像素汉字「你好」的像素艺术二维码版本 9 的星星图标像素艺术二维码,演示更高版本给图案更多分辨率
四个解码验证过的样例:图标、拉丁像素字、中文像素字,以及刻意用更高版本换取星星更多分辨率的码。用手机对准任何一张都能扫出。

一、认识网格:哪些模块是承重墙

二维码由模块(小方块)组成,分两类。功能图形负责让扫描器找到并对齐这张码: 三个大定位角(及其一模块宽的分隔带)、连接它们的虚线状定时线、大码中散布的小对齐方块、以及紧贴定位角的 格式/版本信息条。它们在纠错生效之前就被读取,所以图案绝不能覆盖。其余全部是数据模块—— 载荷和纠错码字 —— 这才是设计师的画布。

二、中心采样:半调作画的"合法漏洞"

解码器并不读取每个像素。定位之后,它在码面铺一张采样网格,只在每个模块中心附近取一个点。 模块外圈对扫描器而言纯属装饰。半调(halftone)技术正是利用这一点:把每个模块细分为 3×3 子格,中心子格保留模块真实值,外圈 8 个子格用来渲染图案。画面从整张码的纹理中浮现,被采样的数据却 逐字节保持原样。这也是为什么规范的像素艺术码几乎不消耗纠错预算 —— 而直接贴上去的 Logo, 盖住的每个模块都在花这笔预算。

三、损伤预算:H 级纠错给你约 30%

Reed–Solomon 纠错让码可以带伤工作:L 级约容忍 7% 码字出错,M 15%,Q 25%,H 30%。像素艺术码应当始终使用H 级。图案本身消耗极少(个别子格图形在采样时读取含糊的模块),其余额度留作现实世界的 安全余量 —— 反光、弯曲、印刷瑕疵。代价是 H 级冗余最多,同样的网址需要更密的码。这笔交换几乎总是划算的, 完整计算见纠错等级指南

四、版本即分辨率:更大的码给图案更多像素

二维码版本从 1(21×21 模块)到 40(177×177),每升一版加 4 个模块。对像素艺术来说,版本就是画布的分辨率:16×16 子格的图标在版本 3 上局促不堪,在版本 7+(45×45 模块 = 135×135 子格) 上就从容许多。上图的星星和笑脸样例编码的都是很短的网址,本来版本 2 就装得下,却刻意生成为版本 7 和 9, 就是为了给图案腾地方。更高版本的代价是同样印刷尺寸下模块更小 —— 所以强制大版本时要把码印大一些 (参见最小尺寸对照表)。

五、配色规则:对比度由扫描器说了算,不是你的眼睛

六、什么都别信:每次渲染都要机器验证

上述规则只能让失败变得罕见,不能保证绝无。过长的网址、激进的图案、再碰上不走运的掩码模式,仍可能凑出一张 扫得慢甚至扫不出的码。唯一诚实的保证是:发布前用真实的 QR 解码器把每张渲染结果解一遍。 HonestQR 生成器对每次渲染运行 jsQR;验证失败就逐级缩小图案直到解码通过,然后才允许下载。 本文四张插图走的正是同一条流水线 —— 你看到的 PNG 成品本身也被解码回了原网址,作为最终校验。 如果你用的工具不做验证,请在实际印刷尺寸、真实扫码距离下用手机实测,或用免费的扫码测试器

七、实用工作流

  1. 选尽量短的网址 —— 载荷越短,同版本下留给图案的空间越大。
  2. 纠错设为 H,最低版本按图案大小设 6–9。
  3. 绘制或选择图案:宽度不超过网格约三分之一的图标是安全的;像素文字以 2–8 个字符效果最佳。
  4. 选高对比配色;验证;印刷用 SVG,屏幕用 PNG。
  5. 按不小于 2×2 cm 印刷,量产前先扫一张实体打样。

以上每一步都可以在HonestQR 生成器(像素艺术标签页)免费完成 —— 无需账号、 无水印,而且这些码是静态码,永不过期。 延伸阅读:艺术二维码为什么能扫把图片放进二维码的三种方法

生成一个永不过期的免费二维码

无需注册、无订阅,在你的浏览器本地生成。

打开免费生成器 →