色彩深度
色彩深度(位深度)是以位数表示数字图像每个像素能表现的颜色数量的指标。1 位为黑白 2 色,8 位为 256 色,24 位(RGB 各 8 位)可表现约 1,677 万色。
二维码本质上是 1 位图像。每个模块以「暗」或「亮」的二值表现信息,不存在中间色。这种二值性使扫描器能够高速识别。如果存在灰色或中间色的模块,扫描器会在「暗」和「亮」的判定上犹豫,导致读取错误。
设计二维码中,为了自定义模块颜色会使用全彩(24 位以上)的色彩深度。但即使提高设计自由度,也需要维持每个模块能够判别「暗」还是「亮」的对比度。暗色模块使用深蓝或深绿没有问题,但亮色模块使用浅黄色会与白色背景无法区分。
保存二维码图像时文件格式与色彩深度的关系也很重要。PNG 是无损压缩可维持色彩深度,而 JPEG 是有损压缩会模糊模块边界。二维码的保存推荐 PNG(1 位或 24 位)或 SVG(矢量)。