QR 코드는 어떻게 만들어지나요?
QR 코드는 입력한 문자와 주소를 흑백 격자에 기록하는 2차원 코드입니다. 이 생성기는 텍스트를 UTF-8 바이트로 바꾼 뒤 QR Code Model 2의 바이트 모드로 배치합니다. 데이터 길이에 맞는 버전을 선택하고, 읽는 기기가 일부 모듈을 놓쳐도 내용을 복구할 수 있도록 Reed-Solomon 오류 정정 코드를 계산합니다. 세 모서리의 큰 위치 찾기 패턴, 작은 정렬 패턴, 타이밍 패턴과 형식 정보를 배치한 다음 남은 칸에 데이터 비트를 지그재그로 넣습니다.
같은 내용이라도 적용하는 마스크 패턴에 따라 검은 칸이 뭉치거나 긴 줄이 생길 수 있습니다. 생성 과정에서는 표준의 8가지 마스크 후보를 모두 적용하고 연속된 색, 2×2 블록, 위치 찾기 패턴과 비슷한 모양, 전체 흑백 비율을 평가해 읽기 쉬운 후보를 선택합니다. 결과 주변에는 네 모듈 너비의 흰색 여백을 포함합니다. 이 여백을 잘라내거나 배경 무늬 위에 붙이면 카메라가 QR의 경계를 찾기 어려워질 수 있습니다.
웹사이트 주소를 선택하면 http 또는 https 주소인지 확인하고, 이메일은 mailto:, 전화번호는 tel: 형식으로 만들어 휴대전화에서 관련 앱을 열기 쉽게 합니다. 일반 텍스트는 입력한 내용을 그대로 담습니다. 외부 QR 생성 API와 외부 JavaScript 라이브러리를 사용하지 않으므로 입력 내용은 서버에 전송되지 않으며 localStorage에도 저장하지 않습니다. 종류와 다운로드 크기 선택만 현재 브라우저의 사용자 설정으로 기억합니다.
QR 코드는 정보를 숨기거나 암호화하는 기술이 아닙니다. 카메라로 읽을 수 있는 사람은 누구나 안의 주소와 텍스트를 확인할 수 있으므로 비밀번호, 주민등록번호, 계좌 인증정보 같은 민감한 내용을 넣지 마세요. 다운로드한 SVG는 크기를 확대해도 선명하지만 문서 프로그램에서 임의로 색을 바꾸거나 가로세로 비율을 찌그러뜨리면 인식률이 떨어질 수 있습니다. 실제 배포 전에는 인쇄물과 화면 모두에서 서로 다른 휴대전화 카메라로 시험하는 것이 안전합니다.
구체적인 상황으로 이해하는 활용 예시
다음 세 상황은 도구의 처리 과정과 결과 해석을 설명하기 위한 가상 예시입니다. 입력 조건을 바꾸면 결과도 달라지므로 자신의 조건과 비교해 확인하세요.
1. 웹 주소를 담는 경우
웹사이트 모드에 https://example.com/ 을 입력하면 20개의 ASCII 문자를 URL 데이터로 담습니다. 생성한 이미지를 다른 기기의 카메라로 읽어 같은 주소인지 확인하세요. 이 도구는 링크가 실제로 안전하거나 페이지가 계속 운영될지 검사하지 않으며, QR 생성 시점을 기준으로 내용이 고정되는 정적 코드입니다.
2. 전화번호를 담는 경우
전화번호 모드에서 가상 번호 +821012345678을 넣으면 tel: 접두사가 붙은 데이터가 만들어집니다. 스캔하는 기기에서는 전화 앱으로 연결될 수 있으므로 실제 번호로 시험하기 전에 결과 내용을 확인하세요. 숫자를 입력했다고 통화가 자동으로 이루어지는 것은 아니며 카메라와 운영체제의 처리 방식에 따라 확인 화면이 달라집니다.
3. 한글과 영문 길이를 비교하는 경우
일반 텍스트 ABC는 UTF-8로 3바이트이지만 가나다는 9바이트입니다. 두 입력은 눈에 보이는 글자 수가 3자로 같아도 QR에 담는 데이터 크기가 다릅니다. 긴 한글 문장을 넣었을 때 격자가 더 촘촘해질 수 있는 이유이며, 저장 이미지의 여백을 남기고 실제 인쇄 크기에서 스캔되는지 확인해야 합니다.