企评社

라벨은 한국어(으)로 표시됩니다. 기업 리뷰, 게시판, 도구 설명은 현재 중국어로만 제공됩니다.

QR 코드 생성기

URL, Wi-Fi, 명함, SMS/전화 네 종류를 즉시 생성합니다. QR코드는 사용자의 브라우저에서 그려지며 내용은 올리지지도 보관하지도 않습니다.

内容只在你的浏览器里生成二维码,不上传、不留存
先说清楚:二维码本身不含加密。 二维码只是把文字换一种画法,任何扫码工具都能把里面的内容原样读出来,谁看见这张图谁就看见了内容。 所以不要用它存放密码、身份证号、银行卡号等敏感信息(包括不要用这种方式分享 WiFi 密码给不特定的人); 确实需要保密时,请改用带密码的专用工具,或先把内容加密再生成二维码。本页只是"画图工具",不做也做不到加密。

文本 / 网址

网址建议带上 https://,扫码后手机才知道要用浏览器打开;内容可以是中文(本页按 UTF-8 编码)。

(用来验证中文能正常生成)

生成参数

导出 PNG 的边长。太大的二维码印在小卡片上反而扫不出来,一般 300 ~ 600 像素够用。

越高越抗污损、被遮挡也能读,但同一张二维码能装的内容越少——内容多到装不下时会提示你降低等级或缩短内容。

标准要求四周各留 4 个模块的空白,本页默认保留。改成 0 虽然图更"满",但很多扫码器会直接识别失败——不要为了省地方去掉它。

深色码点 + 浅色背景最好读(黑底白字这类反色二维码,部分扫码器不认)。两色太接近时本页会提示对比度不足。

预览与下载

预览显示的是等比缩放的图片,下载得到的是你设定尺寸的原始 PNG(文件名形如 二维码-网址-20260607120000.png)。 下载由浏览器本地完成,整页没有任何上传请求。

二维码怎么生成:容量、静默区、对比度与四类常用内容

二维码能装多少字,取决于版本与纠错等级。二维码共 40 个"版本",版本越高格子越多(版本 1 是 21×21 个模块,版本 40 是 177×177),能装的内容也越多。同样一张二维码,纠错等级越高,用来"备份"的格子越多、留给正文的就越少:最高容量出现在低纠错等级,反之要更强的抗损能力就得牺牲容量。这也是为什么"内容太长生成失败"时,最快的解决办法是把纠错等级从 H 降到 M 或 L,或者把内容缩短、改成短链接。本页用 qrcode-generator 按标准自动选版本(版本 0 表示自动),中文按 UTF-8 编码,一个汉字通常占 3 个字节,所以中文内容能装的字数大约是英文的三分之一——遇到超长内容本页会直接提示"内容太长,请缩短或改用更低的纠错等级",而不是抛出一个看不懂的错误。

为什么必须留静默区。二维码规范要求码点区域四周各留至少 4 个模块宽度的空白,这块空白叫静默区(quiet zone)。它不是浪费:扫码器先用这圈空白判断"哪里是二维码的边界",再去做定位与采样。一旦静默区被切掉或被别的图案、文字、色块填满,扫码器可能把边界认错,表现就是"图看着很清楚,手机却怎么也扫不出来"。所以做海报、名片、贴纸排版时,务必让二维码四周留出空白;本页把静默区做成参数(默认 4 个模块)并保留在导出图里,你可以调大,但不建议调成 0。

颜色对比度决定"能不能被识别",不是好看不好看的问题。扫码器先把彩色图转成灰度,再按阈值判黑判白。前景(码点)与背景的亮度差得越多,二值化越干净;反差太小,比如浅灰码点配白底、深蓝配深灰,就会有一批模块被判成"灰"而丢失,从而读不出来。稳妥的做法是深色码点配浅色背景(黑/白、深蓝/白都很好),并且别用明显的渐变或带纹理的照片当背景。本页按 WCAG 的相对亮度公式算出两色的对比度(黑配白是 21:1,白配白是 1:1),低于 3:1 会提示"对比度太低可能导致无法识别",把判断权交给你,但不假装它没问题。

WiFi 与名片二维码为什么手机一扫就懂。手机相机并不是"认识"这些内容,而是二维码里面写了一段有固定格式的纯文本:WiFi 用 WIFI:T:WPA;S:名称;P:密码;;,iPhone 与主流安卓都会解析它并弹出"加入网络",不用再口述密码;名片用 vCard(BEGIN:VCARD 开头),系统会识别成联系人并提示保存;短信和电话分别用 SMSTO: 与 tel:。正因为是固定格式,字段里的分隔符必须正确转义——WiFi 名称或密码里含 ; , : " \ 时要加反斜杠,vCard 的每一行必须以 \r\n 结尾,否则部分机型会解析失败。本页把这几条拼装规则写成了可断言的纯函数,转义由程序完成,不需要你手写。

为什么我们不上传到服务器生成。很多"在线二维码生成"是把你的内容提交给服务器、服务器画好图再传回来——这意味着你的 WiFi 密码、手机号、地址会经过别人的服务器,还可能被记录。二维码的生成完全不需要后端:它只是一段确定的几何计算(数据编码、纠错、掩码、画格子),浏览器里几百毫秒就能算完。所以本页全程在你自己的设备上完成,没有上传接口(打开浏览器开发者工具的 Network 面板,整页不会出现任何提交请求);内容也不写进网址、localStorage 或 cookie,关掉页面就什么也不剩。需要重复使用同一个二维码时,请自己保存下载的 PNG,而不是把内容留在网页里。

자주 묻는 질문

QR 코드 암호화되나요? 비밀번호 넣어도 안전해요?

안 돼요. QR 은 부호화 방식이지 암호화 방식이 아니에요 — 안에 내용은 어떤 스캐너엔가 다 평문이고, 스캔도 안 하고 일반 디코딩 프로그램으로도 읽혀요. 그러니 비밀번호·주민번호·카드 번호는 QR 에 넣지 마세요. WiFi QR 은 편하지만 그 그림 보는 사람한테 비밀번호 다 보여주는 거나 같아요 — 믿을 데(집·회사 안)에만 붙이고 밖 열린 곳엔 붙이지 마세요. 정말 비밀이 필요하면 비밀번호 걸리는 전용 도구를 쓰거나, 내용을 먼저 암호화하고 나서 만드세요.

만든 그림에 왜 흰 여백이 남아요? 여백 0 으로 하면요?

그 여백을 무음 여백(quiet zone) 이라 하는데, 규격은 사방 각 4모듈 이상 비우라 해요 — 스캐너로 코드를 가늠하거든요. 잘리거나 짙은 요소에 붙으면 인식률이 확 떨어져요 — 바탕색 있는 데·진열장 라벨·명함 모서리에선 더 심하죠. 이 페이지는 기본 4모듈이고 내보내기 그림에도 그릴 거예요 — 넓게는 되지만 (스티커 장판엔 넓을수록 잘 읽혀요) 0 은 말라요.

같은 내용인데 오차 정정 등급 올리면 '내용 너무 길어요' 는 왜?

정정 데이터가 본문이랑 QR 한 자리 자리를 다투거든요 — 등급 높을수록 정정 칸 늘고 본문 용량 줄어요. 버전 40(최대) 기준 낮은 등급 약 2900 자 넘는 바이트, 최고 등급은 약 1200 바이트로 줄고, 중국어는 UTF-8 로 글자 3 바이트라 차가 더 커요. 길 세 개: 내용 줄이기, 긴 링크 짧게 바꾸기, 등급 M 이나 L 로 낮추기. 일상적 용도는 M(약 15%) 도 인쇄 닳음·먼지쯤은 버텨요.

만든 WiFi·명함 QR, 몇 폰은 스캔해도 왜 반응 없나요?

모양새부터 보고 다음 선명도 봐요. WiFi 도 vCard 도 딱 맞는 필드 형식이 필요해요 — 이름이랑 비밀번호 안 세미콜론·쉼표·콜론·따옴표·역슬래시는 반드시 빼고 (escape), vCard 는 각 줄 끝에 개행(CR+LF) 꼭 붙어야 해요 — 아니면 '구조화된 내용' 으로 못 알아보고 그냥 글자로 띄워요. 이 페이지는 표준대로 조립하고 자동 치환해 주니, 아래 'QR 에 들어갈 원본 내용' 펼쳐서 글자마다 대조하세요. 형식 문제 없으면, 무음 여백 잘리지 않았나, 너무 작게 찍지 않았나 (2cm 각 이하면 읽기 힘들어요), 색 대비 낮지 않나 보세요.

제 내용 올라가거나 저장되나요? 왜 생성 기록을 안 만들어요?

둘 다 안 돼요. 생성 전체가 여는 페이지 안에서 끝나고 — 올리기 통로 없고, URL·localStorage·sessionStorage·쿠키 어디에도 내용을 안 써요 — 새로고침하면 백지돼요. 기록 안 만드는 건 일부러예요: 이 내용 대개 WiFi 비밀번호·핸드폰 번호·주소인데 — 로컬 저장소에 두는 것 자체가 골칫덩이에요. 다시 쓸 거면 내려받은 PNG 간수하세요.

관련 도구