<img src='/qr.svg' width='160' height='160' alt='签到二维码'> <!-- 容器不要加 opacity 与 filter -->
物料上的二维码在屏幕上能扫,打印成 4cm 见方后,手机要贴近 5 秒才识别,边缘全是锯齿。先别急着动参数,把报错原文和时间点记下来,顺序反了容易白折腾。
原因不复杂,二维码用 canvas 导出的 200px PNG,按 300dpi 打印需要约 470px,放大后模块边界糊在一起。容器还加了 0.5 的透明度,对比度进一步下降。
「二维码打印模糊」改完先别急着全量,挑一台机器放半天,真有问题这段时间就能看出来。备份不是备了就行,恢复一次才算数,很多备份文件打开才发现是空的。
接口问题先分清是没发出去、发出去了没收到,还是收到了处理失败。偶发问题先统计频率,一小时几次和一天一次,查法完全不同。
改完顺手把文档补一句,省得下次自己重新推一遍。
处理上按这个顺序:改用 SVG 输出 矢量放大不失真;必须位图时按 300dpi 反推尺寸 不小于 500px;打印前用手机在正常光线下实测 连续扫三次都能识别。
改完只确认一件事:打印稿上的二维码手机一秒内识别,边缘清晰无锯齿。
