🎨 Color Converter
HEX, RGB, HSL, CMYK 색상 형식 간 변환
🎨 Color Input
ℹ️ About Color Formats
HEX (Hexadecimal)
Six-digit code representing RGB values. Example: #FF5733
RGB (Red, Green, Blue)
Values from 0-255 for each color channel. Example: rgb(255, 87, 51)
HSL (Hue, Saturation, Lightness)
Hue: 0-360°, Saturation: 0-100%, Lightness: 0-100%. Example: hsl(9, 100%, 60%)
CMYK (Cyan, Magenta, Yellow, Key/Black)
Used in printing. Each value: 0-100%. Example: cmyk(0%, 66%, 80%, 0%)
📖 색상 형식(Color Format)이란?
🎨 색상 표현 방식
디지털 환경에서 색상을 표현하는 방법은 여러 가지가 있습니다. 각 형식은 서로 다른 용도와 장점을 가지고 있으며, 웹 개발, 디자인, 인쇄 등 다양한 분야에서 사용됩니다. Color Converter는 이러한 다양한 색상 형식을 쉽게 변환하여 원하는 환경에 맞는 색상 코드를 빠르게 얻을 수 있도록 도와줍니다.
HEX: #FF5733 RGB: rgb(255, 87, 51) HSL: hsl(11, 100%, 60%) CMYK: cmyk(0%, 66%, 80%, 0%)
💡 Color Converter 사용 사례
- 웹 개발: 디자인 목업의 RGB 색상을 CSS HEX 코드로 변환
- 디자인 작업: 웹용 HEX 색상을 인쇄용 CMYK로 변환
- 브랜드 가이드: 브랜드 색상을 모든 형식으로 문서화
- 색상 조정: HSL로 밝기나 채도 값을 정확히 조정
- 접근성 검토: RGB 값으로 색상 대비 계산
- 크로스 플랫폼: iOS, Android, Web 간 색상 코드 통일
🔧 사용 방법
- 색상 입력: HEX, RGB, HSL, CMYK 중 하나의 형식으로 색상 입력
- 컬러 피커 사용: 시각적으로 색상을 선택하여 자동 변환
- 샘플 색상: 자주 사용하는 색상 샘플 클릭하여 빠르게 적용
- 자동 변환: 입력 즉시 모든 형식으로 자동 변환
- 복사: 원하는 형식의 색상 코드를 클릭하여 복사
🌈 주요 색상 형식
HEX (Hexadecimal)
형식: #RRGGBB 또는 #RGB
설명: 16진수로 RGB 값을 표현. 웹 개발에서 가장 많이 사용되는 형식입니다.
범위: #000000 (검정) ~ #FFFFFF (흰색)
예시:
#FF0000- 빨강#00FF00- 초록#0000FF- 파랑#FFF- 흰색 (축약형)
용도: HTML/CSS, SVG, 디자인 도구
장점: 간결하고 읽기 쉬움, 웹 표준
RGB (Red, Green, Blue)
형식: rgb(R, G, B) 또는 rgba(R, G, B, A)
설명: 빨강, 초록, 파랑의 빛을 혼합하여 색상을 표현. 디지털 디스플레이의 기본 원리입니다.
범위: 각 채널 0~255 (8비트)
예시:
rgb(255, 0, 0)- 빨강rgb(0, 128, 255)- 하늘색rgba(255, 0, 0, 0.5)- 투명한 빨강 (50%)
용도: CSS, JavaScript, Canvas, 이미지 처리
장점: 직관적, 투명도(alpha) 지원
HSL (Hue, Saturation, Lightness)
형식: hsl(H, S%, L%) 또는 hsla(H, S%, L%, A)
설명: 색상(Hue), 채도(Saturation), 밝기(Lightness)로 색상을 표현. 사람의 색 인식과 유사합니다.
범위:
- H (색상): 0~360° (색상환)
- S (채도): 0%~100% (회색~선명)
- L (밝기): 0%~100% (검정~흰색)
예시:
hsl(0, 100%, 50%)- 순수한 빨강hsl(120, 100%, 50%)- 순수한 초록hsl(240, 50%, 75%)- 연한 파랑
용도: 색상 팔레트 생성, 테마 시스템
장점: 색상 조정 쉬움, 직관적 변형 가능
CMYK (Cyan, Magenta, Yellow, Key)
형식: cmyk(C%, M%, Y%, K%)
설명: 인쇄용 색상 모델. 청록, 자홍, 노랑, 검정 잉크의 양으로 색상을 표현합니다.
범위: 각 채널 0%~100%
예시:
cmyk(0%, 100%, 100%, 0%)- 빨강cmyk(100%, 0%, 100%, 0%)- 초록cmyk(50%, 0%, 0%, 0%)- 하늘색
용도: 인쇄, 명함, 포스터, 출판
주의: 모니터와 인쇄물 색상 차이 발생 가능
🔄 RGB와 CMYK의 차이
RGB (가산 혼합)
- 원리: 빛을 더해서 색상 생성
- 기본색: 빨강, 초록, 파랑
- 혼합 결과: 모두 더하면 흰색
- 사용: 모니터, TV, 스마트폰
- 색 범위: 더 넓고 선명한 색상
CMYK (감산 혼합)
- 원리: 잉크로 빛을 흡수하여 색상 생성
- 기본색: 청록, 자홍, 노랑, 검정
- 혼합 결과: 모두 더하면 검정
- 사용: 프린터, 인쇄소
- 색 범위: RGB보다 제한적
🎨 HSL 색상 조정 팁
색상(Hue) 조정
0°~360° 값을 변경하여 색상 자체를 바꿉니다:
- 0° / 360°: 빨강
- 120°: 초록
- 240°: 파랑
- 60°: 노랑
- 180°: 청록
- 300°: 자홍
채도(Saturation) 조정
색의 선명도를 조절합니다:
- 0%: 회색 (색상 없음)
- 50%: 중간 채도
- 100%: 가장 선명한 색
브랜드 색상은 보통 80~100% 채도를 사용합니다.
밝기(Lightness) 조정
색의 밝기를 조절합니다:
- 0%: 검정
- 50%: 순수한 색상
- 100%: 흰색
버튼 호버 효과는 밝기를 ±10% 조정하면 자연스럽습니다.
💻 프로그래밍 언어별 사용 예시
CSS:
/* HEX */
color: #FF5733;
background: #00AA99;
/* RGB */
color: rgb(255, 87, 51);
background: rgba(0, 170, 153, 0.8);
/* HSL */
color: hsl(11, 100%, 60%);
background: hsla(174, 100%, 33%, 0.8);JavaScript:
// HEX to RGB 변환
function hexToRgb(hex) {
const r = parseInt(hex.slice(1, 3), 16);
const g = parseInt(hex.slice(3, 5), 16);
const b = parseInt(hex.slice(5, 7), 16);
return `rgb(${r}, ${g}, ${b})`;
}
// RGB to HEX 변환
function rgbToHex(r, g, b) {
return "#" + [r, g, b].map(x => {
const hex = x.toString(16);
return hex.length === 1 ? "0" + hex : hex;
}).join('');
}Python:
# RGB to HEX
def rgb_to_hex(r, g, b):
return '#{:02x}{:02x}{:02x}'.format(r, g, b)
# HEX to RGB
def hex_to_rgb(hex_code):
hex_code = hex_code.lstrip('#')
return tuple(int(hex_code[i:i+2], 16) for i in (0, 2, 4))❓ 자주 묻는 질문 (FAQ)
Q: 어떤 색상 형식을 사용해야 하나요?
A: 웹 개발에는 HEX나 RGB를 권장합니다. 색상 조정이 많다면 HSL이 편리하고, 인쇄 작업에는 CMYK가 필수입니다. 투명도가 필요하면 RGBA나 HSLA를 사용하세요.
Q: #FFF와 #FFFFFF의 차이는 무엇인가요?
A: 같은 색상입니다. #FFF는 #FFFFFF의 축약형으로, 각 채널의 두 자리가 같을 때 사용할 수 있습니다. #F0F는 #FF00FF와 같습니다.
Q: RGB와 RGBA의 차이는 무엇인가요?
A: RGBA는 RGB에 투명도(Alpha) 채널이 추가된 것입니다. Alpha 값은 0~1 사이이며, 0은 완전 투명, 1은 완전 불투명입니다. 예: rgba(255, 0, 0, 0.5)는 50% 투명한 빨강입니다.
Q: 왜 모니터와 인쇄물의 색상이 다르게 보이나요?
A: 모니터는 RGB (빛 혼합)를 사용하고, 인쇄는 CMYK (잉크 혼합)를 사용하기 때문입니다. RGB는 더 넓은 색 범위를 표현할 수 있어 일부 선명한 색상은 CMYK로 정확히 재현되지 않습니다.
Q: HSL이 RGB보다 나은 점은 무엇인가요?
A: HSL은 사람의 색 인식과 유사하여 색상 조정이 직관적입니다. 밝기만 조정하거나, 채도만 변경하는 등의 작업이 쉽습니다. 다크 테마나 색상 팔레트 생성 시 특히 유용합니다.
💡 색상 사용 팁
- 접근성: WCAG 기준에 따라 텍스트와 배경 간 충분한 대비 확보 (최소 4.5:1)
- 일관성: 프로젝트 전체에서 하나의 색상 형식을 일관되게 사용
- 명명: CSS 변수로 색상을 관리하여 유지보수 개선 (예: --primary-color)
- 다크 모드: HSL을 사용하면 밝기만 조정하여 다크 테마 쉽게 구현
- 그라데이션: 같은 색상의 밝기를 조절하여 자연스러운 그라데이션 생성
- 인쇄 작업: Pantone 색상표나 CMYK 색상 샘플로 최종 확인
- 브랜드 색상: 모든 형식으로 문서화하여 팀원과 공유
⚠️ 주의사항
- RGB에서 CMYK로 변환 시 색상이 약간 변할 수 있습니다 (색 영역 차이)
- HEX 코드는 대소문자를 구분하지 않지만, 소문자를 권장합니다
- 웹 안전 색상(Web Safe Colors)은 더 이상 중요하지 않습니다 (과거 256색 시대의 유산)
- 투명도가 있는 색상은 배경색에 따라 다르게 보일 수 있습니다
- 색맹/색약 사용자를 고려하여 색상만으로 정보를 전달하지 마세요