二维码生成(可改颜色、形状、加 Logo,免费在线)

文本、网址、Wi-Fi、名片、短信等八种模板生成二维码,可调容错级别、尺寸、静区、配色与码点形状,支持中心加 Logo,导出 PNG/SVG/JPG,生成与识别都在浏览器本地完成。

这个工具能做什么

左边填内容和外观,右边实时出码,改任何一项都能立刻看到结果。生成与识别都在浏览器里完成,输入的内容不会上传到服务器。

内容不止一段文字:Wi-Fi、名片、短信这些有固定语法的格式,工具会按规范拼装并转义特殊字符,你只要填网络名称、密码、姓名、电话,不用记 WIFI: 或 vCard 的写法。

八种内容类型分别扫出什么

二维码本身只存字节,扫出来做什么由内容前缀决定。这也是为什么同样一段字符,有的扫出来是网址,有的只是一段文字。

网址:最常见的用法,手机扫码后提示用浏览器打开。工具在没写协议时按 https:// 补全,因为纯 example.com 在部分扫码器里会被当成文本。

Wi-Fi:按 WIFI:T:WPA;S:网络名;P:密码;; 的约定写入。iOS 与 Android 10 以上扫码后可直接连接,不用手输密码;密码里的分号、逗号、冒号会反斜杠转义,否则会截断字段。

名片:使用 vCard 3.0 而不是 4.0。4.0 在老款 Android 和部分扫码器上支持不完整,3.0 兼容性最好,扫出来是「添加到通讯录」。

短信、电话、邮件、位置:分别使用 SMSTO:、tel:、mailto:、geo: 协议,扫码后交给系统对应的应用处理,是否发送或拨出仍由用户确认。

扫不出来?先看这四个参数

二维码的失败是静默的:扫不出时手机只显示「未识别到二维码」,不会告诉你原因。绝大多数问题都出在下面四项。

对比度:码点与背景的亮度差太小,摄像头在光线不足时会把两者读成一片。本工具按 WCAG 计算对比度,低于 4.5:1 会提醒,低于 3:1 基本读不出。注意是「深色码点 + 浅色背景」,反过来(浅码点 + 深背景)属于反色码,旧版微信与部分扫码器直接不认。

静区:码点外侧必须留出空白。标准要求 4 个模块宽,本工具默认 4;贴边印刷、放进圆形头像框或经常被裁切时,至少要留 2。

容错级别:L 约 7%、M 约 15%、Q 约 25%、H 约 30% 的码点允许损坏后仍能读出。级别越高越耐污,但同样内容会占用更多模块、版本更高、格子更密。加 Logo 建议用 H。

模块像素:导出 200px 的高版本二维码,每个模块可能不到 2 像素,印刷或缩小显示就糊成一片。预览区会算出每个模块占多少像素,低于 3 就提示你加大尺寸。

加 Logo 与自定义样式要注意什么

Logo 会盖住中间的码点,等于人为制造破损。能扫出来靠的是容错级别里的冗余:H 级可以恢复约 30% 的损坏面积,所以加 Logo 时建议切到 H,占比控制在 20% 以内。

码点形状改成圆点或圆角会减少每个模块的着色面积,模块越小越容易糊。工具会在「每个模块不足 4 像素」时提醒换成方形。定位点(三个角上的大方块)形状可以单独改,圆形定位点在多数扫码器上识别正常,但极端角度下不如方形稳。

渐变码点只是改变了填充方式,不会增加容量;但渐变两端都要与背景保持足够对比,否则一端会「消失」。判断标准取更差的一端,预览区的提醒也是按这个算的。

PNG、JPG、SVG 该导出哪个

屏幕展示、聊天分享:PNG。无损、支持透明背景,文件也不大。

印刷、招牌、物料:SVG。矢量格式,放大到几米也不会糊,Illustrator、Figma、CorelDRAW 都能直接打开编辑颜色。带 Logo 的 SVG 会把图片内嵌进去,文件会大一些,但仍是单个文件。

需要不透明背景:JPG。JPG 不支持透明,选择了透明背景时会自动填上背景色,避免出现黑底。代价是有压缩噪点,二维码这种高对比图形不一定比 PNG 小,能用 PNG 就用 PNG。

尺寸怎么定:屏幕展示 300–500px 足够;名片、传单印刷按 3–5 厘米成品尺寸算,导出 1000px 以上;展板按实际尺寸的 300dpi 反推,或者直接用 SVG。

隐私与费用

生成、识别、导出全部在你的浏览器里完成:二维码矩阵由本地脚本计算,图片渲染走 Canvas,识别用本地解码库。你填的内容、上传的图片都不会发到服务器,页面只从服务端读取工具目录与使用策略。

本工具免费、免登录、不限次数,导出的二维码没有有效期、没有扫描次数限制,也不会带上任何平台水印。

常见问题

为什么加了 Logo 之后手机扫不出来?

Logo 遮住的区域超出了容错能力。先把容错级别切到 H(可恢复约 30%),再把 Logo 占比降到 20% 以内;同时确认导出尺寸足够大,Logo 缩得太小会糊成一团反而更难识别。加完 Logo 一定用手机实扫一次,别只看预览。

深色背景、浅色码点的二维码为什么扫不出?

这是反色码。二维码规范要求深色码点、浅色背景,虽然部分扫码器(包括较新的手机相机)能读反色码,但旧版微信、支付宝与不少工业扫码枪只认正色。如果一定要深色底,请把前景设成白色、背景设成深色后实测,或者改用浅色底。

内容太长生成失败怎么办?

二维码最大是 40 版,在 L 级容错下最多约 2953 字节(中文一个字通常占 3 字节,约 980 个汉字)。超出时会提示容量不足。可以降低容错级别、精简文案,或者把长内容放到短链接里再生成。

静区是什么?可以设成 0 吗?

静区是码点外侧的空白边框。扫码器需要这段空白来区分二维码与周围图案,标准要求 4 个模块宽。可以设成 0,但如果二维码贴在深色或其他图案上、或被裁切,识别率会明显下降;印刷场景建议保持 4。

生成的二维码会过期吗?

不会。这是静态二维码,内容直接编码在图形里,不依赖任何服务器,也没有扫描次数限制。反过来,内容一旦生成就无法修改——要改内容只能重新生成一张。

Wi-Fi 二维码里的密码会泄露吗?

密码以明文形式编码在二维码图形里,任何能扫这张图的人都能拿到密码,也可以用自己的工具解出来。这是 Wi-Fi 二维码的固有特性,不适合把访客网络密码印在对外公开的物料上。

识别的图片会上传到服务器吗?

不会。图片在浏览器里被绘制到 Canvas,再用本地解码库分析像素,整个过程没有网络请求。摄像头扫描同样是本地逐帧解码。

为什么手机上能扫,电脑上的某些软件扫不出?

不同解码器对容错、反色、圆点样式的容忍度不同。码点改成圆点、静区不足、对比度偏低时,手机相机通常还能读出,但老旧的扫码枪或截图识别工具就会失败。对外投放的二维码建议用方形码点、4 个模块静区、对比度 7:1 以上。

同类工具

查看图像与视觉全部工具 · 返回全部工具