바코드 생성기
QR1D 바코드(CODE128, EAN, UPC, CODE39 등)를 PNG 또는 SVG로 생성합니다.
이 페이지에서
바코드 생성기란?#
1D 바코드는 모든 제품 포장, 운송 라벨, 이벤트 티켓에서 여전히 보이는 수직 검은 막대의 줄입니다. 2D인 QR 코드(수백 바이트를 담음)와 달리 1D 바코드는 짧은 식별자 — 보통 4~14자 — 를 담으며, 레이저 스캐너나 휴대폰 카메라가 단일 가로 스윕으로 읽습니다. 이 페이지는 가장 흔한 11종의 심볼 체계를 브라우저에서 렌더링하고 결과를 PNG 또는 SVG로 내보냅니다.
포맷이 이렇게 많은 이유는 각각 다른 산업 제약을 위해 설계되었기 때문입니다. EAN-13과 UPC는 소매 표준입니다. 고정 길이, 숫자 전용, 수학적으로 계산된 체크 디지트를 가져 스캐너가 잘못 읽기를 거부할 수 있습니다. CODE128은 임의 ASCII 텍스트를 담으며 운송(예: 운송장 번호)의 일꾼입니다. CODE39는 배지와 자산 태그에서 여전히 쓰이는 레거시 영숫자 포맷입니다. ITF-14는 14자리 운송 컨테이너 코드를 인코딩합니다. Pharmacode는 단일 정수(3~131070)를 제약 포장용의 작은 심볼로 압축합니다. MSI, codabar, EAN-5, EAN-2가 틈새 케이스를 채웁니다.
이 페이지는 JsBarcode를 감싸며, 래스터 출력을 위해 <canvas>에, 벡터 출력을 위해 <svg> 요소에 그립니다. 라이브러리에 넘기기 전에 빠른 로컬 검사를 실행하여, 조용한 실패 대신 친절한 메시지(“숫자 전용” 또는 “잘못된 길이”)를 받게 합니다.
사용 방법#
- 입력 상자에 값 을 입력하거나 붙여넣습니다. 플레이스홀더
123456789012는 EAN-13 길이를 암시합니다. - 형식 을 고릅니다. 각 심볼 체계는 고유 문자 집합과 길이 규칙이 있습니다. 드롭다운이 11종을 모두 나열합니다(CODE128, CODE39, EAN13, EAN8, UPC, ITF14, MSI, codabar, pharmacode, EAN5, EAN2).
- 막대 너비(모듈당 1–4 px)와 높이(60, 100, 150 또는 200 px)를 조정합니다. 좁은 막대는 더 조밀하고 작은 코드를, 더 키 큰 막대는 빗각에서 더 안정적으로 스캔됩니다.
- 예제 로 선택한 형식에 유효한 값을 미리 채우거나, 지우기 로 다시 시작합니다. 미리보기가 오른쪽에서 갱신됩니다.
- PNG(이미지와 PDF용) 또는 SVG(코드가 어떤 크기에서도 선명해야 하는 인쇄용)로 다운로드합니다.
주요 기능#
- 한 도구에 11종 심볼 체계. 소매(EAN-13/UPC), 물류(CODE128/ITF-14), 자산(CODE39/MSI), 제약(pharmacode), 애드온(EAN-5/EAN-2) — 사이트를 옮겨 다닐 필요 없이.
- 체크 디지트를 대신 처리. EAN-13, EAN-8, UPC, ITF-14에 대해 12/7/11/13자리를 주면 체크 디지트가 자동 계산됩니다. 전체 길이를 주면 검증됩니다.
- 렌더 전 검사. 빈 입력, 숫자 포맷의 비 숫자 문자, 잘못된 길이, CODE39/codabar의 불법 문자를 렌더러 호출 전 에 잡아냅니다.
- 벡터 SVG 내보내기. 인쇄용 바코드는 절대 래스터화되지 않아야 합니다. SVG는 어떤 라벨 크기에서도 선명합니다.
- 로컬 동작. JsBarcode가 페이지에 번들되어 백엔드가 없으며 값은 브라우저를 떠나지 않습니다.
사용 예#
12자리 기본 590123412345인 제품이 있고 EAN-13이 필요하다고 합시다. EAN13을 선택하고 590123412345를 붙여넣습니다. 렌더러는 체크 디지트(7)를 계산하고 전체 13자리 바코드를 그립니다. 막대 아래의 사람이 읽을 수 있는 줄은 5901234123457을 표시합니다.
체크 디지트 수학(손으로 검증할 수 있도록): 홀수 위치 숫자의 합 ×1 + 짝수 위치 숫자의 합 ×3을 구하고, (10 − 총합 mod 10) mod 10을 취합니다. 590123412345의 경우 (5+0+2+4+2+4)×1 + (9+1+3+1+3+5)×3 = 17 + 66 = 83이고, 10 − 3 = 7.
운송 라벨의 경우 CODE128로 전환하고 1Z999AA10123456784 같은 임의의 운송장 문자열을 붙여넣습니다. CODE128은 전체 ASCII 범위를 받아들여 문자, 숫자, 하이픈이 모두 직접 인코딩됩니다.
FAQ#
EAN-13이 내 13자리 숫자를 계속 거부합니다. 왜요?#
이미 체크 디지트를 입력했다면 다시 확인하세요. 처음 12자리만 다시 입력하고 도구가 13번째를 붙이게 하세요. 한 자리만 바뀌어도 체크섬이 무효가 되며, 렌더러는 스캔되지 않을 코드를 그리기를 거부합니다.
CODE39 바코드가 스캔되지 않습니다. 무엇이 문제인가요?#
CODE39는 대문자 A–Z, 숫자 0–9, 기호 - . $ / + %(그리고 공백)만 지원합니다. 소문자는 사양의 일부가 아닙니다. 먼저 대문자로 변환하세요. 도구는 렌더링 전에 불법 문자를 “chars” 오류로 표시합니다.
Pharmacode는 무엇이고, 왜 그런 이상한 범위인가요?#
Pharmacode는 제약 포장에 쓰이는 이진 기반 심볼 체계로, 내부 제품 ID에 매핑되는 단일 정수를 인코딩합니다. 유효 범위는 3~131070이며, 이 바깥의 값은 이 형식으로 표현할 수 없습니다.
PNG와 SVG 중 어느 것을 골라야 하나요?#
인쇄로 가는 모든 것(라벨, 포장, 문서)에는 SVG를 — 픽셀화 없이 확장됩니다. 화면 표시, 이메일 서명, 래스터 이미지가 기대되는 PDF에는 PNG가 적당합니다.