把码放在图片上,和把它嵌进图片里
两件不同的活被叫成同一个名字,而只有其中一件是难的。
放在图片上是合成。二维码保留自己的浅色背景,像一张贴纸一样待在照片的一角。码本身没有任何改变,扫描也没有任何改变,而且十次里大概有九次这就是正确答案。如果码只是需要待在一个摄影版面上,导出一张透明的二维码PNG,放到浅色区域,读到这里就可以了。
嵌进图片里是融合。没有白框:画面在图案下面继续延伸,模块是从图像本身画出来的,码读起来像是作品的一部分,而不是被订在上面的东西。人们搜索“把二维码嵌进照片或插画”时想要的正是这个,也正是QRolling的艺术标签页所做的事——生成器里紧挨着“类型”和“设计”的第三个标签页。
本页余下的部分讲的是后者,因为有规则的是它。
纠错额度就是全部预算
每一个二维码都带Reed–Solomon纠错。在H级别下,图案大约有30%被破坏,码依然能解出来。这份富余不是您可以透支的安全保障——它是融合之所以可能的唯一原因。
中心Logo把这份额度花在一个地方:一小片模块没了,其余完好无损,账很好算。这种情况的尺寸规则在带Logo的二维码生成器指南里。
融合则是把同一份额度同时花在每一处。您得到的不是30%的模块缺失、70%完好,而是100%的模块都被轻微削弱——每一个都被身后图像的颜色拽走一点。同样的预算,均匀地摊薄在整张网格上。这就是为什么在您显示器上完美解码的嵌入式码,到了墙上会失败:在屏幕上每个模块多少还剩一点对比度,而印刷、眩光和距离会把这一点点同时从所有模块身上拿走。
艺术模式的三个控制项,就是决定这份预算怎么花的三种方式:
扫描强度在模块背后的图像上铺一层纯色。设为0时画面以全强度呈现,图案手上只剩那些点可用;调高它,底色变淡,模块干净地分离出来,图像随之褪去。默认值是0.15。
深色模块尺寸决定画出来的点覆盖每个深色格子的多少,从格子的五分之一到铺满整格。点越大,码越强,画面越少。
浅色点尺寸对浅色格子做同样的事。设为0时,码的浅色部位让图像原封不动地透出来——正是这个设置让融合看起来像融合,也是码扫不出来时第一个该往上调的参数。
默认值(深色0.62、浅色0.24、铺色0.15)调校的目标,是在手臂距离上仍能被手机扫到的前提下,尽可能多地露出图像。从那里每往画面方向走一步,都是往“在您桌上能用、在海报上失败”的码上走一步。
哪些图片嵌得好,哪些永远嵌不好
扫描器看不到您的照片。它看到的是被降采样成每个模块一个数值的照片——一张大约33×33或45×45格的网格。任何小于一个模块的细节都是噪点,而噪点白白吃掉纠错额度。
图片适合嵌入吗?为什么扁平插画、矢量图形、Logo造型最理想大片纯色和硬边缘在降采样后完好无损单个主体配纯色或虚化背景适合该有对比的地方有对比,中间留得住空图形感强、明暗分明的摄影通常可以影调分离足够,模块读得出来树叶、人群、砖墙、织物纹理不适合模块尺度上的细节全变成噪点雾气、暮色、平淡的中间调不适合模块找不到可以分离出来的对象暗调照片不适合深色模块压在深色底上,怎么调都读不出人脸,或者任何位于正中的主体不适合网格正好压在您在意的部位上,看起来就是破损——对扫描器和对观众都是
有两条捷径值得记住。同一个题材,插画每一次都赢过照片——纯色和干净的边缘,恰恰是被压缩到每模块一个采样后还能活下来的东西,这就是为什么插画融合看着锐利,照片融合看着发糊。还有,图像的中心应该是最无聊的那一块。 中间构图繁忙,就会跟码最密集、最脆弱的区域打架;一片素净的天空、一堵墙、一段渐变或一块柔和的虚化留在中间,图案才有地方存在。
如果一张图过不了这些检验,解决办法是换图,不是把参数调狠。把扫描强度一路调到一张烂照片能扫出来为止,得到的是一个灰扑扑的方块,而它本来就不值得拿去融合。
三个定位图案没有商量余地
角上那三个大方块是相机能够找到一个码的全部依据。在解出任何一个比特之前,扫描器先在画面里搜寻它们1:1:3:1:1的黑白节奏——结构解剖在二维码是什么里。无论它们下面的图像在做什么,它们都必须保持在干净底色上的全对比度。
无论作品是什么,QRolling都以全强度绘制它们。如果您在设计软件里手工拼一个融合效果,这是您第一个会破坏、最后一个会察觉的东西,因为定位图案被削弱的码不会优雅地退化。它不会变慢。它会从能用直接变成不存在。
静区——四周各四个模块宽的干净浅色边距——是另一个受害者,而且它对这种手法格外要命:嵌入式码总想一直流到作品的边缘,而那恰恰抹掉了扫描器用来判断码在哪里结束的余白。
您付出的代价,以及这些码该出现在哪里
融合是用扫描余量换视觉冲击力。请为这份损失做预算:
工作距离。 按普通码大约一半的射程来规划。从二维码尺寸指南里取您的扫描距离对应的宽度,再加50%。
只有位图。 艺术效果导出为PNG,因为它所依据的图片本身也是位图——不存在一个在任何尺寸下都刀锋般锐利的矢量版本。请远高于最终尺寸导出,并遵守二维码印刷指南里的分辨率规则;被放大过的融合码就是一个死码。
糟糕的表面只会更糟。 亮膜、弯曲的瓶身、小尺寸贴纸、昏暗的房间,每一样都要吃掉余量——普通码吸收得了,嵌入式码吸收不了。
它是一份单独的导出。 艺术PNG不能替代您标准样式的码,所以在可靠性重于观感的投放位置上,请留一个普通版本。
它们值回票价的地方:海报、菜单板、唱片与包装面板、活动背景板、橱窗贴、杂志内页——大、平、哑光、光线好。它们不该出现的地方:名片、小票、3厘米的桌牌、瓶颈,以及任何匆忙之中被扫的东西。当一个“照片+码”的版面必须做小时,请改用自定义二维码生成器做一个普通的样式码,把它放在图片上面。
要比测普通码更狠地测它
普通码要么过要么不过。嵌入式码存在一个中间状态:技术上确实能解码,实地里却依然没用,所以要测速度,而不只是测成功。
两部手机,一部iPhone一部Android。 处在边缘状态的码,正是两家解码器意见不合的地方。
在真实距离、真实材质、真实光线下测。 屏幕测试在这里什么也证明不了;显示器自带背光,您的海报没有。
给锁定计时。 普通码一秒之内就抓住了。如果融合码要找上三四秒,那它在光线更差的墙上就会彻底失败。调高浅色点尺寸或扫描强度,再测一遍。
解码导出的文件本身,用从图片扫码确认里面的目标地址正是您想要的那个。
整批印刷前先打一张校样。 如果没过,就照着故障清单往下排——对融合码来说,答案几乎总是图片、尺寸或表面。