从图片扫描二维码

把输入从摄像头换成文件:PNG、JPG、WebP、GIF。

只有点击按钮时才会请求摄像头权限。每一帧都在本机解码后立即丢弃。

这一页处理以像素形式存在的码:聊天里的截图、嵌在幻灯片里的码、扫描件、小票照片。整个过程不碰摄像头,所以不会出现权限弹窗。

大图在解码前会把长边缩到 1600 像素,如果仍然失败,解码器会在更小的尺度上重试。多尺度尝试存在的原因很简单:对解码器最合适的尺寸,未必是原始分辨率。

使用方法

  1. 把图片拖到页面上,或点击浏览文件。
  2. 如果是截图,Ctrl+V 也可以。
  3. 复制解码出的内容,大图首次解码可能要等一秒。

为什么全分辨率照片会失败,缩小的反而成功

解码器先把图像二值化,再找模块边缘。分辨率很高又经过 JPEG 压缩时,明暗模块之间的过渡会带上振铃伪影,把边缘糊掉。缩小相当于对这些伪影取平均,梯度重新变干净。

同样的道理也解释了截图为什么比照片更稳:边缘没有压缩噪点,没有透视偏斜,也没有不均匀的光照。能自己控制图像时,截图永远是更好的输入。

审校于 2026-10-21。这个工具完全在你的浏览器里运行——没有服务器、不需要账号,生成的内容也不会被保存。

常见问题

支持哪些图片格式?

PNG、JPEG、WebP、GIF 和 BMP,浏览器能解的都可以。iPhone 的 HEIC 需要先转成 JPEG。

倒置或镜像的码能读吗?

倒置可以,二维码自带方向标记。镜像码部分引擎能解;如果解不出,把图片水平翻转再试一次。

明明看得见码,为什么提示找不到?

可能是码相对整张图太小、发虚,或者定位图案被裁掉了。把码周围裁紧一点再试,单这一步就能解决大部分失败。

相关工具

更多二维码工具。